summaryrefslogtreecommitdiff
path: root/sys-fs
diff options
context:
space:
mode:
Diffstat (limited to 'sys-fs')
-rw-r--r--sys-fs/Manifest.gzbin21576 -> 21573 bytes
-rw-r--r--sys-fs/btrfs-progs/Manifest4
-rw-r--r--sys-fs/btrfs-progs/btrfs-progs-5.15.ebuild (renamed from sys-fs/btrfs-progs/btrfs-progs-5.14.1.ebuild)0
-rw-r--r--sys-fs/ctmg/Manifest2
-rw-r--r--sys-fs/ctmg/ctmg-1.2.ebuild11
-rw-r--r--sys-fs/e2fsprogs/Manifest6
-rw-r--r--sys-fs/e2fsprogs/e2fsprogs-1.45.7.ebuild142
-rw-r--r--sys-fs/e2fsprogs/e2fsprogs-1.46.2.ebuild143
-rw-r--r--sys-fs/e2fsprogs/e2fsprogs-1.46.3.ebuild143
-rw-r--r--sys-fs/jdiskreport-bin/Manifest2
-rw-r--r--sys-fs/jdiskreport-bin/jdiskreport-bin-1.4.1.ebuild10
-rw-r--r--sys-fs/lvm2/Manifest6
-rw-r--r--sys-fs/lvm2/lvm2-2.02.188-r2.ebuild11
-rw-r--r--sys-fs/lvm2/lvm2-2.03.14.ebuild16
-rw-r--r--sys-fs/lvm2/metadata.xml2
-rw-r--r--sys-fs/mdadm/Manifest6
-rw-r--r--sys-fs/mdadm/mdadm-4.2_rc3.ebuild (renamed from sys-fs/mdadm/mdadm-4.2_rc2.ebuild)2
-rw-r--r--sys-fs/ntfs3g/Manifest7
-rw-r--r--sys-fs/ntfs3g/metadata.xml4
-rw-r--r--sys-fs/ntfs3g/ntfs3g-2021.8.22-r3.ebuild (renamed from sys-fs/ntfs3g/ntfs3g-2017.3.23.5-r1.ebuild)43
-rw-r--r--sys-fs/ntfs3g/ntfs3g-2021.8.22.ebuild5
-rw-r--r--sys-fs/zfs-kmod/Manifest10
-rw-r--r--sys-fs/zfs-kmod/files/2.1.1-SEEK_DATA-SEEK_HOLE.patch594
-rw-r--r--sys-fs/zfs-kmod/files/2.1.1-restore-dirty-dnode-logic.patch31
-rw-r--r--sys-fs/zfs-kmod/zfs-kmod-0.8.6.ebuild5
-rw-r--r--sys-fs/zfs-kmod/zfs-kmod-2.0.6.ebuild13
-rw-r--r--sys-fs/zfs-kmod/zfs-kmod-2.1.1-r3.ebuild (renamed from sys-fs/zfs-kmod/zfs-kmod-2.1.1.ebuild)24
-rw-r--r--sys-fs/zfs-kmod/zfs-kmod-9999.ebuild13
-rw-r--r--sys-fs/zfs/Manifest8
-rw-r--r--sys-fs/zfs/zfs-0.8.6-r1.ebuild6
-rw-r--r--sys-fs/zfs/zfs-2.0.6-r1.ebuild6
-rw-r--r--sys-fs/zfs/zfs-2.1.1-r5.ebuild (renamed from sys-fs/zfs/zfs-2.1.1-r2.ebuild)10
-rw-r--r--sys-fs/zfs/zfs-9999.ebuild10
33 files changed, 778 insertions, 517 deletions
diff --git a/sys-fs/Manifest.gz b/sys-fs/Manifest.gz
index a789b698a846..bbf72d4f8460 100644
--- a/sys-fs/Manifest.gz
+++ b/sys-fs/Manifest.gz
Binary files differ
diff --git a/sys-fs/btrfs-progs/Manifest b/sys-fs/btrfs-progs/Manifest
index 060767a998ce..3199de3ad3ae 100644
--- a/sys-fs/btrfs-progs/Manifest
+++ b/sys-fs/btrfs-progs/Manifest
@@ -1,8 +1,8 @@
DIST btrfs-progs-v5.10.1.tar.xz 2204164 BLAKE2B ed83729754f9abd22d4d2e7ae9a7e90e80be9b63d49a4a9692e20e5939467dbd864834b71495661e1c7a1fca89e253a62fbda37f1d01d2eadecb13f5904f0dd0 SHA512 32e5b8bda1863e34613802db91946f240b2cde21288ff8f95c1807e7afd0a67c5a704aa4d2bc0d7b1ca094de6831adbfec83fe61f74e1caf6d1975be7d972f2d
-DIST btrfs-progs-v5.14.1.tar.xz 2247384 BLAKE2B 70eb5f1f3f4b7acc2d4f662c0484984903a09c03bd4d3bd6e15ac712318c3ee9a3621e682f1d33a8b2b25280a63801e1a71d574c55dbd28e205e7fb4b549af47 SHA512 d706322b3c82825ab0eedc952a5e68642483539af5f3bf84d751ffed09d5e997f188370734145c7eb8b109be5bf6d77a2e3731521b3e34d46e1a454eef6bfb56
DIST btrfs-progs-v5.14.2.tar.xz 2252600 BLAKE2B 74ac21bc9bbc70a4034b6a439afbd0c0ab023ac7815c1cae1e7ac81c4239684d41be06bebe1d015dc2a0ba80cf0975e8f6da7e111b2825eb1a7814d1832914eb SHA512 dc1a73e49dd94ccd8128c197d99f112977b16350d22bc0ca32247211314a3fec66de73827305bf24ef8e0571fc890f00378d0ec3a82988f0ee54f5db10f6578c
+DIST btrfs-progs-v5.15.tar.xz 2275480 BLAKE2B 45fa1e20d14bdd92b1a7761771c7b6c2795d885f91fb44c9c5cf9c735c0c6c0f319e701ca2f6bf19191c50552459287042b56d4308fcc2da5bd566e63c755941 SHA512 5fc182c490733cbe7f2cdb8e131e0c79e5cc374ae32427d5f9ee2251e00e6e1d8ba0fdbbe31d50230f2bded08a9b9c652a4288998a427643a2d738f57ce72f90
EBUILD btrfs-progs-5.10.1-r1.ebuild 2981 BLAKE2B 0c1e13d87b5119c171447e3eebc0fe9439da77a7d05ae0b1130eb8904c24081716e6f15dcb39f700abbe68a0431331c78c18a9253cb631998e61a842bbbe9791 SHA512 715d72ae20791fa701e3116ae7540be89c6761cbee1b42589881482e3abab6d5f9621fcba2b22166ac858466fe821b1af32284a0eea0a25ec8d9b3f63518a7c7
-EBUILD btrfs-progs-5.14.1.ebuild 3020 BLAKE2B cc9ea2671ef95528d17529556c6ae00cda5d2386c35c93e1bd07909775393dd208df0b28269935fdab8d049611dcb3b1ec4e1561346058e94166703cdf8f0a84 SHA512 c063048685057d687f99516f770789a3919e6354d7279999ffab70c05511b08ab632f888ed4a9b1d7870acd2a8bdccda9b9e4e1abec0b3c83fda3d8578eda374
EBUILD btrfs-progs-5.14.2.ebuild 3020 BLAKE2B cc9ea2671ef95528d17529556c6ae00cda5d2386c35c93e1bd07909775393dd208df0b28269935fdab8d049611dcb3b1ec4e1561346058e94166703cdf8f0a84 SHA512 c063048685057d687f99516f770789a3919e6354d7279999ffab70c05511b08ab632f888ed4a9b1d7870acd2a8bdccda9b9e4e1abec0b3c83fda3d8578eda374
+EBUILD btrfs-progs-5.15.ebuild 3020 BLAKE2B cc9ea2671ef95528d17529556c6ae00cda5d2386c35c93e1bd07909775393dd208df0b28269935fdab8d049611dcb3b1ec4e1561346058e94166703cdf8f0a84 SHA512 c063048685057d687f99516f770789a3919e6354d7279999ffab70c05511b08ab632f888ed4a9b1d7870acd2a8bdccda9b9e4e1abec0b3c83fda3d8578eda374
EBUILD btrfs-progs-9999.ebuild 3020 BLAKE2B cc9ea2671ef95528d17529556c6ae00cda5d2386c35c93e1bd07909775393dd208df0b28269935fdab8d049611dcb3b1ec4e1561346058e94166703cdf8f0a84 SHA512 c063048685057d687f99516f770789a3919e6354d7279999ffab70c05511b08ab632f888ed4a9b1d7870acd2a8bdccda9b9e4e1abec0b3c83fda3d8578eda374
MISC metadata.xml 524 BLAKE2B 4e27833128aeb064271af7a4f3c05699b4603b1d993b32bef3d9d973182d3d0c88ac799c95f0f35495e9a99e645627afd96049273c08c3e1334d8fe1ccf0debe SHA512 471014a98bc3feb75e7930485e89daf6cb3390c37a330b8373d5c3b0b764b9180cbff133839ce4742a3c76f63e6f18895060d5906e6a113d2cd43af0df3b0d5a
diff --git a/sys-fs/btrfs-progs/btrfs-progs-5.14.1.ebuild b/sys-fs/btrfs-progs/btrfs-progs-5.15.ebuild
index 36548f98db8a..36548f98db8a 100644
--- a/sys-fs/btrfs-progs/btrfs-progs-5.14.1.ebuild
+++ b/sys-fs/btrfs-progs/btrfs-progs-5.15.ebuild
diff --git a/sys-fs/ctmg/Manifest b/sys-fs/ctmg/Manifest
index 6f0a2a88b43d..2055ca5707bd 100644
--- a/sys-fs/ctmg/Manifest
+++ b/sys-fs/ctmg/Manifest
@@ -1,3 +1,3 @@
DIST ctmg-1.2.tar.xz 3824 BLAKE2B 58cddaa3ce31b7e3d91b1752b6e850efcd2d89173d35773f71431df8a7b8894af8f04b7c49d193872de934244e66f59fc4cc39b41477a927ecac7c9e7a32f708 SHA512 6c4b7881c57cead41c7c0065c55805af7fee901723f61bdb06e5cb64dbba08add382d80f931f3321dca5e1e0f8080ab7da4520e58494694ba21900d23717c816
-EBUILD ctmg-1.2.ebuild 561 BLAKE2B 96edabf4e0a56de361e36792cfdfcdeeb0e662a851658af48ea03c91b6f5a5f94d0b30efcb4500b6c29c14d358039e9600a11c41ea096f180603e6743cee9e0f SHA512 5c9e1594738ce1bb8d4976302bf859a07713039bf3150c7e2a241c8511921899c96d3233da9bcfab67197cfb516ff63f8ce378ec69d2a34621a4ae79e0cac94e
+EBUILD ctmg-1.2.ebuild 564 BLAKE2B d47b88d50a28b81bb903a70f483182374e7c0b4134322d074faf711e77d81c51fb432f5b05bf1bc551a3f523c4e8d3b674a2fa5e4992504243c3b09283ca741c SHA512 188a763313b819f69bf372c26f493b127f135e4398962ae9e37d5625b84a421f3b00a4bc33b42150b78dd4d80b17a60c5a88568fe5d486aba783479f0d7f9ff4
MISC metadata.xml 251 BLAKE2B b1977a04e8904e65636648bd24804893bc0a317a7a20a8b4bac3874f0529dd15b2c058b0002b13febafcdfd93cbef59ef7bc1c646f3996c381b994d384b73ba3 SHA512 25f6fc31ee9e87d78b143500e706ac3417896e67a183470867130b23a42ec8ddd4cdd9a1da40f32903085ee4add969b4b07466b90fb0275308a2518d2d73a270
diff --git a/sys-fs/ctmg/ctmg-1.2.ebuild b/sys-fs/ctmg/ctmg-1.2.ebuild
index 7f05530078a9..e8ac8f76fe98 100644
--- a/sys-fs/ctmg/ctmg-1.2.ebuild
+++ b/sys-fs/ctmg/ctmg-1.2.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=8
DESCRIPTION="Simple wrapper around cryptsetup for encrypted containers"
HOMEPAGE="https://git.zx2c4.com/ctmg/about/"
@@ -13,7 +13,12 @@ KEYWORDS="amd64 arm ~arm64 x86"
IUSE=""
DEPEND=""
-RDEPEND="sys-fs/cryptsetup sys-apps/util-linux sys-fs/e2fsprogs sys-apps/coreutils app-admin/sudo"
+RDEPEND="
+ sys-fs/cryptsetup
+ sys-apps/util-linux
+ sys-fs/e2fsprogs
+ sys-apps/coreutils
+ app-admin/sudo"
src_compile() { :; }
diff --git a/sys-fs/e2fsprogs/Manifest b/sys-fs/e2fsprogs/Manifest
index c91684bf0df8..dcab8ead9b93 100644
--- a/sys-fs/e2fsprogs/Manifest
+++ b/sys-fs/e2fsprogs/Manifest
@@ -4,13 +4,7 @@ AUX e2fsprogs-1.42.13-fix-build-cflags.patch 290 BLAKE2B b37f9fd204bd35631776d68
AUX fsck_ext2fs.8 3802 BLAKE2B 379ef7974e29c654e4a69caa64c3703eecf375d63557915bdbfe23c8c0ca67cc9a13792988ba8c0b18bb4ae0819d220102f034499200fd20951e004d34273311 SHA512 639af16c7881bdfca55a9cd39623d3eeb9ae0ca93f8e65321c69ab1b2591cb17cdd0cfc21d27c20b8cc65bd295cccf23e47f740fffb91f4cf17e32959bb166d0
AUX fsck_ext2fs.c 2793 BLAKE2B 65294fc9026bdb859a58d010f885fdbee2db4372a81b82ffa0722a0a3163885561bf06f0fdb73b4cf8c9cfc5bd0dc0c6ee0a7fb340a2416ce34555eff22f71a4 SHA512 1cac2963c0e85dd6a111bfe2a00f2b4f65c17a05bf0039cec073d4109ad4b0efee8905cff1a25098e0693f367db300054d92598a85dfbe8e5db7ff6419534af6
DIST e2fsprogs-1.42.9-mint-r1.patch.xz 9012 BLAKE2B ae6421587c3cca2f9b26805c5f8d236d3fecde78cc7df3776ae9c23c7f254d7240e06507568fdd2154a16113c47609a8143535ab9cb2925426d3c578d077ce26 SHA512 591a7c80d65082eebcdc455028be6ade05c9aae96c94f654106be0facef330a8875dae82891e6e3ad2b48dece2b4e1c1940dbc47cd3eba3e6eea3b5ddba9a8fc
-DIST e2fsprogs-1.45.7.tar.xz 5570052 BLAKE2B 237ef068c3899641b5eb908cc302c8c6b454e337bce2de95fc96b9a078a003db0c44bd34391063cc2f30a95dcce57950fe900f59ae7d273786c657b7c190b341 SHA512 fcbd66af7b87f2bdec562ddd59c8c5fbd60f32fdd582a5c9d21cb6cfea642d2cdca57b6c29124309798528b2d9ceadf770928a6698f75dc88a47701286128763
-DIST e2fsprogs-1.46.2.tar.xz 7020552 BLAKE2B 0eda7428862c13dfd02308f0321d22c134679197bad5b247baa6f0ca386433db6749b97529709d43934afa73d8d0801379bb342456a0fd3dab7df01f5a90fd31 SHA512 5297a4d7bf944806d8ee77227eac596b5e5efed2c665561d40094c40b9f321616c60975a2716f1499a9f72243df6e3b6e2267b98ec1fdc1dfd646d7be887fc4d
-DIST e2fsprogs-1.46.3.tar.xz 7024896 BLAKE2B 86f65cf9997f09aa7a27be35b2f38d6385f565de565b1c4cda710dbbea8312312ff77d92beb2b579a3caffa7ce82ee6b2726eb8f97daf41bba46379a94198c8f SHA512 27da6e38d3463e7a283dacfb88a3210dd6d8c63f4d990db879f63bdf503aaa5c447ef0ccc566b71526c12a8ab0a7a6529014b1010be300ad56a6ad5ce9066196
DIST e2fsprogs-1.46.4.tar.xz 7035200 BLAKE2B 473f7fd3f521b94cdaa68e37784a518fc1919387dd114f31b5338f1b4c472f86b150229ec3dcae8b73eac95330c0dea729befc8cea08bcf1e455c0b6652d6d2b SHA512 7d9cfdf00ed58e66049585e8382fe4977088956421a0fb8155900c69afd8857309ad2b9301b3f74c9c0afa7287a0ddba2fd1538fcf57858b37a9ab712390016d
-EBUILD e2fsprogs-1.45.7.ebuild 3977 BLAKE2B aa340ee1dfe6fa745c5e69e48098e3d0bbde09ac6da4c28fa6a853193414e5236a0eb2f50fbe3b9951afaad1b903247eccc85becf793acbda1d30c262f373a78 SHA512 bdc90d96f2200c1e2217cab8c7e2775d377fae6eee2524b5dd1dac0196d0ab5b1f4adf1d0dc84ea2bb55a67ca45e09ed348db0f5482c79acf69fb22ea3f7df04
-EBUILD e2fsprogs-1.46.2.ebuild 4015 BLAKE2B 6aabd166fce82e441e6214fcc911033c3b58ac114870b221c29e4d55978adf8819d8dfa09d0b8549ca6fbd5e964fa2bb3de5afe8a1006e31c92fa4785949ace0 SHA512 6faff94db1cff5d1ae4c726afb9c8e5a31cb2f435f009af4b66668d65ffc88375d98ed4a187c744abb368d1804db6c193bceef7a76057d94df94cb4ad9bb61b5
-EBUILD e2fsprogs-1.46.3.ebuild 4019 BLAKE2B ea12fa2e331be15f3f7c003575ab6369025c28b49a421174ac9559b671c347df954c505c74a4e41b67d18798cf4b4ee8da6595deec11a3e1420990a279fb6454 SHA512 99c1ca7e4780e2716ccddfc03415d31f1f292347d127874335a6219a4afc56bf3c7b2fb8e850d9b6a9bc375536164c8e28dc743c3bdc9afe930ee335f7802136
EBUILD e2fsprogs-1.46.4-r51.ebuild 4919 BLAKE2B aa332a2ab98952e301cf139d489b7421e8254c83b18eb9750fc509283fd62c02c2b9b921ddf592229cd1425d4922ef0c31c37b6964390b7cfbd0d9cc700940ec SHA512 afe69970b8f4b5077ed9ca2ced0d8d6d5d61278dc1bc367a90ccf7323544d39228fbe7ba51e35bcde747c34cd915106f864dacfb4fec91f424167ecc546bd666
EBUILD e2fsprogs-1.46.4.ebuild 4011 BLAKE2B ed9e1b1ff7116c4a07c650978b42aa43801daaa530c191c2e3ed095d5a0f2938a2c4795b78ecddb577325ca3b125bbf6bcb08fbe4e957bf1bfb30cfcb34e4171 SHA512 26ef3f4a84c8fcb2b7a57b5f1377761cb137ad4c6f491de4579709987a1489ebd9f35d9bc00a2f10514483b3c0b0b605150bd6d836322b1c183cab771a7a3005
MISC metadata.xml 782 BLAKE2B 6010ef2af50bc0ec4f7511d28e47cd6f0fc76e3ef88afed222f5a6775e3a1ac51940b2272c37713c0f594b10202391073776f1f8330bc9f45ce0c3a03548f135 SHA512 3a18335967f411f387ecdd066db068d05c90abd1af4a91b226d52a6b9507932528d006ef5e463a423bb635d88b12d81ca1e2d403bd9de2dd12c04a50abc94474
diff --git a/sys-fs/e2fsprogs/e2fsprogs-1.45.7.ebuild b/sys-fs/e2fsprogs/e2fsprogs-1.45.7.ebuild
deleted file mode 100644
index 9325951632f0..000000000000
--- a/sys-fs/e2fsprogs/e2fsprogs-1.45.7.ebuild
+++ /dev/null
@@ -1,142 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic systemd toolchain-funcs udev usr-ldscript
-
-DESCRIPTION="Standard EXT2/EXT3/EXT4 filesystem utilities"
-HOMEPAGE="http://e2fsprogs.sourceforge.net/"
-SRC_URI="https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/${P}.tar.xz
- elibc_mintlib? ( mirror://gentoo/${PN}-1.42.9-mint-r1.patch.xz )"
-
-LICENSE="GPL-2 BSD"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="cron fuse nls static-libs elibc_FreeBSD"
-
-RDEPEND="~sys-libs/${PN}-libs-${PV}
- >=sys-apps/util-linux-2.16
- cron? ( sys-fs/lvm2[-device-mapper-only(-)] )
- fuse? ( sys-fs/fuse:0 )
- nls? ( virtual/libintl )"
-DEPEND="${RDEPEND}"
-BDEPEND="
- nls? ( sys-devel/gettext )
- virtual/pkgconfig
- sys-apps/texinfo
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.40-fbsd.patch
- "${FILESDIR}"/${PN}-1.42.13-fix-build-cflags.patch #516854
-
- # Upstream patches (can usually removed with next version bump)
-)
-
-src_prepare() {
- if [[ ${CHOST} == *-mint* ]] ; then
- PATCHES+=( "${WORKDIR}"/${PN}-1.42.9-mint-r1.patch )
- fi
-
- default
-
- cp doc/RelNotes/v${PV}.txt ChangeLog || die "Failed to copy Release Notes"
-
- # Get rid of doc -- we don't use them. This also prevents a sandbox
- # violation due to mktexfmt invocation
- rm -r doc || die "Failed to remove doc dir"
-
- # blargh ... trick e2fsprogs into using e2fsprogs-libs
- sed -i -r \
- -e 's:@LIBINTL@:@LTLIBINTL@:' \
- -e '/^(STATIC_)?LIB(COM_ERR|SS)/s:[$][(]LIB[)]/lib([^@]*)@(STATIC_)?LIB_EXT@:-l\1:' \
- -e '/^DEP(STATIC_)?LIB(COM_ERR|SS)/s:=.*:=:' \
- MCONFIG.in || die "muck libs" #122368
- sed -i -r \
- -e '/^LIB_SUBDIRS/s:lib/(et|ss)::g' \
- Makefile.in || die "remove subdirs"
- ln -s $(which mk_cmds) lib/ss/ || die
-
- # Avoid rebuild
- echo '#include_next <ss/ss_err.h>' > lib/ss/ss_err.h
-}
-
-src_configure() {
- # Keep the package from doing silly things #261411
- export VARTEXFONTS="${T}/fonts"
-
- # needs open64() prototypes and friends
- append-cppflags -D_GNU_SOURCE
-
- local myeconfargs=(
- --with-root-prefix="${EPREFIX}"
- $(use_with cron crond-dir "${EPREFIX}/etc/cron.d")
- --with-systemd-unit-dir="$(systemd_get_systemunitdir)"
- --with-udev-rules-dir="${EPREFIX}$(get_udevdir)/rules.d"
- --enable-symlink-install
- --enable-elf-shlibs
- $(tc-has-tls || echo --disable-tls)
- --without-included-gettext
- $(use_enable fuse fuse2fs)
- $(use_enable nls)
- --disable-libblkid
- --disable-libuuid
- --disable-fsck
- --disable-uuidd
- )
- ac_cv_path_LDCONFIG=: econf "${myeconfargs[@]}"
-
- if [[ ${CHOST} != *-uclibc ]] && grep -qs 'USE_INCLUDED_LIBINTL.*yes' config.{log,status} ; then
- eerror "INTL sanity check failed, aborting build."
- eerror "Please post your ${S}/config.log file as an"
- eerror "attachment to https://bugs.gentoo.org/show_bug.cgi?id=81096"
- die "Preventing included intl cruft from building"
- fi
-}
-
-src_compile() {
- emake V=1 COMPILE_ET=compile_et MK_CMDS=mk_cmds
-
- # Build the FreeBSD helper
- if use elibc_FreeBSD ; then
- cp "${FILESDIR}"/fsck_ext2fs.c .
- emake V=1 fsck_ext2fs
- fi
-}
-
-src_install() {
- # need to set root_libdir= manually as any --libdir options in the
- # econf above (i.e. multilib) will screw up the default #276465
- emake \
- STRIP=: \
- root_libdir="${EPREFIX}/usr/$(get_libdir)" \
- DESTDIR="${D}" \
- install
-
- einstalldocs
-
- insinto /etc
- doins "${FILESDIR}"/e2fsck.conf
-
- # Move shared libraries to /lib/, install static libraries to
- # /usr/lib/, and install linker scripts to /usr/lib/.
- gen_usr_ldscript -a e2p ext2fs
-
- # configure doesn't have an option to disable static libs :/
- if ! use static-libs ; then
- find "${ED}" -name '*.a' -delete || die
- fi
-
- if use elibc_FreeBSD ; then
- # Install helpers for us
- into /
- dosbin "${S}"/fsck_ext2fs
- doman "${FILESDIR}"/fsck_ext2fs.8
-
- # filefrag is linux only
- rm \
- "${ED}"/usr/sbin/filefrag \
- "${ED}"/usr/share/man/man8/filefrag.8 || die
- fi
-}
diff --git a/sys-fs/e2fsprogs/e2fsprogs-1.46.2.ebuild b/sys-fs/e2fsprogs/e2fsprogs-1.46.2.ebuild
deleted file mode 100644
index 35a2562be6d2..000000000000
--- a/sys-fs/e2fsprogs/e2fsprogs-1.46.2.ebuild
+++ /dev/null
@@ -1,143 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic systemd toolchain-funcs udev usr-ldscript
-
-DESCRIPTION="Standard EXT2/EXT3/EXT4 filesystem utilities"
-HOMEPAGE="http://e2fsprogs.sourceforge.net/"
-SRC_URI="https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/${P}.tar.xz
- elibc_mintlib? ( mirror://gentoo/${PN}-1.42.9-mint-r1.patch.xz )"
-
-LICENSE="GPL-2 BSD"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux"
-IUSE="cron fuse lto nls static-libs +threads elibc_FreeBSD"
-
-RDEPEND="~sys-libs/${PN}-libs-${PV}
- >=sys-apps/util-linux-2.16
- cron? ( sys-fs/lvm2[-device-mapper-only(-)] )
- fuse? ( sys-fs/fuse:0 )
- nls? ( virtual/libintl )"
-DEPEND="${RDEPEND}"
-BDEPEND="
- nls? ( sys-devel/gettext )
- virtual/pkgconfig
- sys-apps/texinfo
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.40-fbsd.patch
- "${FILESDIR}"/${PN}-1.42.13-fix-build-cflags.patch #516854
-
- # Upstream patches (can usually removed with next version bump)
-)
-
-src_prepare() {
- if [[ ${CHOST} == *-mint* ]] ; then
- PATCHES+=( "${WORKDIR}"/${PN}-1.42.9-mint-r1.patch )
- fi
-
- default
-
- cp doc/RelNotes/v${PV}.txt ChangeLog || die "Failed to copy Release Notes"
-
- # Get rid of doc -- we don't use them. This also prevents a sandbox
- # violation due to mktexfmt invocation
- rm -r doc || die "Failed to remove doc dir"
-
- # blargh ... trick e2fsprogs into using e2fsprogs-libs
- sed -i -r \
- -e 's:@LIBINTL@:@LTLIBINTL@:' \
- -e '/^(STATIC_)?LIB(COM_ERR|SS)/s:[$][(]LIB[)]/lib([^@]*)@(STATIC_)?LIB_EXT@:-l\1:' \
- -e '/^DEP(STATIC_)?LIB(COM_ERR|SS)/s:=.*:=:' \
- MCONFIG.in || die "muck libs" #122368
- sed -i -r \
- -e '/^LIB_SUBDIRS/s:lib/(et|ss)::g' \
- Makefile.in || die "remove subdirs"
- ln -s $(which mk_cmds) lib/ss/ || die
-
- # Avoid rebuild
- echo '#include_next <ss/ss_err.h>' > lib/ss/ss_err.h
-}
-
-src_configure() {
- # Keep the package from doing silly things #261411
- export VARTEXFONTS="${T}/fonts"
-
- # needs open64() prototypes and friends
- append-cppflags -D_GNU_SOURCE
-
- local myeconfargs=(
- --with-root-prefix="${EPREFIX}"
- $(use_with cron crond-dir "${EPREFIX}/etc/cron.d")
- --with-systemd-unit-dir="$(systemd_get_systemunitdir)"
- --with-udev-rules-dir="${EPREFIX}$(get_udevdir)/rules.d"
- --enable-symlink-install
- --enable-elf-shlibs
- $(tc-has-tls || echo --disable-tls)
- $(use_enable fuse fuse2fs)
- $(use_enable nls)
- --disable-libblkid
- --disable-libuuid
- --disable-fsck
- --disable-uuidd
- $(use_enable lto)
- $(use_with threads pthread)
- )
- ac_cv_path_LDCONFIG=: econf "${myeconfargs[@]}"
-
- if [[ ${CHOST} != *-uclibc ]] && grep -qs 'USE_INCLUDED_LIBINTL.*yes' config.{log,status} ; then
- eerror "INTL sanity check failed, aborting build."
- eerror "Please post your ${S}/config.log file as an"
- eerror "attachment to https://bugs.gentoo.org/show_bug.cgi?id=81096"
- die "Preventing included intl cruft from building"
- fi
-}
-
-src_compile() {
- emake V=1 COMPILE_ET=compile_et MK_CMDS=mk_cmds
-
- # Build the FreeBSD helper
- if use elibc_FreeBSD ; then
- cp "${FILESDIR}"/fsck_ext2fs.c .
- emake V=1 fsck_ext2fs
- fi
-}
-
-src_install() {
- # need to set root_libdir= manually as any --libdir options in the
- # econf above (i.e. multilib) will screw up the default #276465
- emake \
- STRIP=: \
- root_libdir="${EPREFIX}/usr/$(get_libdir)" \
- DESTDIR="${D}" \
- install
-
- einstalldocs
-
- insinto /etc
- doins "${FILESDIR}"/e2fsck.conf
-
- # Move shared libraries to /lib/, install static libraries to
- # /usr/lib/, and install linker scripts to /usr/lib/.
- gen_usr_ldscript -a e2p ext2fs
-
- # configure doesn't have an option to disable static libs :/
- if ! use static-libs ; then
- find "${ED}" -name '*.a' -delete || die
- fi
-
- if use elibc_FreeBSD ; then
- # Install helpers for us
- into /
- dosbin "${S}"/fsck_ext2fs
- doman "${FILESDIR}"/fsck_ext2fs.8
-
- # filefrag is linux only
- rm \
- "${ED}"/usr/sbin/filefrag \
- "${ED}"/usr/share/man/man8/filefrag.8 || die
- fi
-}
diff --git a/sys-fs/e2fsprogs/e2fsprogs-1.46.3.ebuild b/sys-fs/e2fsprogs/e2fsprogs-1.46.3.ebuild
deleted file mode 100644
index 963bf42ad0c5..000000000000
--- a/sys-fs/e2fsprogs/e2fsprogs-1.46.3.ebuild
+++ /dev/null
@@ -1,143 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit flag-o-matic systemd toolchain-funcs udev usr-ldscript
-
-DESCRIPTION="Standard EXT2/EXT3/EXT4 filesystem utilities"
-HOMEPAGE="http://e2fsprogs.sourceforge.net/"
-SRC_URI="https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v${PV}/${P}.tar.xz
- elibc_mintlib? ( mirror://gentoo/${PN}-1.42.9-mint-r1.patch.xz )"
-
-LICENSE="GPL-2 BSD"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="cron fuse lto nls static-libs +threads elibc_FreeBSD"
-
-RDEPEND="~sys-libs/${PN}-libs-${PV}
- >=sys-apps/util-linux-2.16
- cron? ( sys-fs/lvm2[-device-mapper-only(-)] )
- fuse? ( sys-fs/fuse:0 )
- nls? ( virtual/libintl )"
-DEPEND="${RDEPEND}"
-BDEPEND="
- nls? ( sys-devel/gettext )
- virtual/pkgconfig
- sys-apps/texinfo
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.40-fbsd.patch
- "${FILESDIR}"/${PN}-1.42.13-fix-build-cflags.patch #516854
-
- # Upstream patches (can usually removed with next version bump)
-)
-
-src_prepare() {
- if [[ ${CHOST} == *-mint* ]] ; then
- PATCHES+=( "${WORKDIR}"/${PN}-1.42.9-mint-r1.patch )
- fi
-
- default
-
- cp doc/RelNotes/v${PV}.txt ChangeLog || die "Failed to copy Release Notes"
-
- # Get rid of doc -- we don't use them. This also prevents a sandbox
- # violation due to mktexfmt invocation
- rm -r doc || die "Failed to remove doc dir"
-
- # blargh ... trick e2fsprogs into using e2fsprogs-libs
- sed -i -r \
- -e 's:@LIBINTL@:@LTLIBINTL@:' \
- -e '/^(STATIC_)?LIB(COM_ERR|SS)/s:[$][(]LIB[)]/lib([^@]*)@(STATIC_)?LIB_EXT@:-l\1:' \
- -e '/^DEP(STATIC_)?LIB(COM_ERR|SS)/s:=.*:=:' \
- MCONFIG.in || die "muck libs" #122368
- sed -i -r \
- -e '/^LIB_SUBDIRS/s:lib/(et|ss)::g' \
- Makefile.in || die "remove subdirs"
- ln -s $(which mk_cmds) lib/ss/ || die
-
- # Avoid rebuild
- echo '#include_next <ss/ss_err.h>' > lib/ss/ss_err.h
-}
-
-src_configure() {
- # Keep the package from doing silly things #261411
- export VARTEXFONTS="${T}/fonts"
-
- # needs open64() prototypes and friends
- append-cppflags -D_GNU_SOURCE
-
- local myeconfargs=(
- --with-root-prefix="${EPREFIX}"
- $(use_with cron crond-dir "${EPREFIX}/etc/cron.d")
- --with-systemd-unit-dir="$(systemd_get_systemunitdir)"
- --with-udev-rules-dir="${EPREFIX}$(get_udevdir)/rules.d"
- --enable-symlink-install
- --enable-elf-shlibs
- $(tc-has-tls || echo --disable-tls)
- $(use_enable fuse fuse2fs)
- $(use_enable nls)
- --disable-libblkid
- --disable-libuuid
- --disable-fsck
- --disable-uuidd
- $(use_enable lto)
- $(use_with threads pthread)
- )
- ac_cv_path_LDCONFIG=: econf "${myeconfargs[@]}"
-
- if [[ ${CHOST} != *-uclibc ]] && grep -qs 'USE_INCLUDED_LIBINTL.*yes' config.{log,status} ; then
- eerror "INTL sanity check failed, aborting build."
- eerror "Please post your ${S}/config.log file as an"
- eerror "attachment to https://bugs.gentoo.org/show_bug.cgi?id=81096"
- die "Preventing included intl cruft from building"
- fi
-}
-
-src_compile() {
- emake V=1 COMPILE_ET=compile_et MK_CMDS=mk_cmds
-
- # Build the FreeBSD helper
- if use elibc_FreeBSD ; then
- cp "${FILESDIR}"/fsck_ext2fs.c .
- emake V=1 fsck_ext2fs
- fi
-}
-
-src_install() {
- # need to set root_libdir= manually as any --libdir options in the
- # econf above (i.e. multilib) will screw up the default #276465
- emake \
- STRIP=: \
- root_libdir="${EPREFIX}/usr/$(get_libdir)" \
- DESTDIR="${D}" \
- install
-
- einstalldocs
-
- insinto /etc
- doins "${FILESDIR}"/e2fsck.conf
-
- # Move shared libraries to /lib/, install static libraries to
- # /usr/lib/, and install linker scripts to /usr/lib/.
- gen_usr_ldscript -a e2p ext2fs
-
- # configure doesn't have an option to disable static libs :/
- if ! use static-libs ; then
- find "${ED}" -name '*.a' -delete || die
- fi
-
- if use elibc_FreeBSD ; then
- # Install helpers for us
- into /
- dosbin "${S}"/fsck_ext2fs
- doman "${FILESDIR}"/fsck_ext2fs.8
-
- # filefrag is linux only
- rm \
- "${ED}"/usr/sbin/filefrag \
- "${ED}"/usr/share/man/man8/filefrag.8 || die
- fi
-}
diff --git a/sys-fs/jdiskreport-bin/Manifest b/sys-fs/jdiskreport-bin/Manifest
index db53df38976c..bf338e8ae2c9 100644
--- a/sys-fs/jdiskreport-bin/Manifest
+++ b/sys-fs/jdiskreport-bin/Manifest
@@ -1,3 +1,3 @@
DIST jdiskreport-1_4_1.zip 864613 BLAKE2B 9f10a10e54f0553e9130bdaf801380b40982a48e308fff5418308a37a4e02a886961d5ff2787b9bc3d1dfa1db087409e0447b275f6419b5e775716d20843fa98 SHA512 c1e17bdaab739561ae46475d69805e18be271a0d41b555e981cde59091d6c46fe3cf6775bdd992200edbb4646b7a04003a6b67bfedc18161952a20e47b18ea38
-EBUILD jdiskreport-bin-1.4.1.ebuild 650 BLAKE2B 9cd7263ccfac9331c0c7730335741aec623418a7073fa02082d15957edb90a9f8759e3682c0a6bdc337522e3d7b6d940e825c8a68094ce1c986216eb26877516 SHA512 e0006eb4794e244f18d4ba53d4088de3d9967797d92b74e50a2d7cacd6ebf878497eea2015d338fe3d8b4e071a0a67bc52edbcf35c5dbb2eae5cbb8a25063c6e
+EBUILD jdiskreport-bin-1.4.1.ebuild 641 BLAKE2B 3c870ae7b1af5d99178e60f33a753d1c6ee2da26668f82e93e8427ccf57f01646b42e6b7938feae49b60be392e5871de8cf6312110e2f2f26bfcdf391862333d SHA512 51cf64ff8c4d7ac3226e5d550e95e3e14f5582d135adc59ded566ea9c90c049d2b458de9b6caa8d3f534a627d7b9601d01b13ea1fdfe21bc24d9af49d9d2e070
MISC metadata.xml 450 BLAKE2B 5d86db8cedd71361c76bf57bd3176e7a2445e75af6ec9a77196357f3bb657d67a53bf825de71ff3e7421e54352bf8103baf0af5fe2350afb785f8bcc8110da3c SHA512 7a5e2258ba61f84aaedfeb74cc80069b639f7306a03add2ad132a7db23cf857d0691780a940e667bea7626da54672d9bc6224f16ecd1f71d4928f302b33b13f1
diff --git a/sys-fs/jdiskreport-bin/jdiskreport-bin-1.4.1.ebuild b/sys-fs/jdiskreport-bin/jdiskreport-bin-1.4.1.ebuild
index 69ad393e3a39..05d9deaeb551 100644
--- a/sys-fs/jdiskreport-bin/jdiskreport-bin-1.4.1.ebuild
+++ b/sys-fs/jdiskreport-bin/jdiskreport-bin-1.4.1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=5
+EAPI=7
inherit java-pkg-2
@@ -12,16 +12,14 @@ MY_P="${MY_PN}-${MY_PV}"
DESCRIPTION="JDiskReport helps you to understand disk drive usage"
HOMEPAGE="http://www.jgoodies.com/freeware/jdiskreport/"
SRC_URI="http://www.jgoodies.com/download/${MY_PN}/${MY_P}.zip"
+S="${WORKDIR}/${MY_PN}-${PV}"
LICENSE="freedist"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-IUSE=""
-DEPEND="app-arch/unzip"
RDEPEND=">=virtual/jre-1.6"
-
-S=${WORKDIR}/${MY_PN}-${PV}
+BDEPEND="app-arch/unzip"
src_install() {
java-pkg_newjar ${MY_PN}-${PV}.jar
diff --git a/sys-fs/lvm2/Manifest b/sys-fs/lvm2/Manifest
index 5e11d9d6d332..fb4b2227463e 100644
--- a/sys-fs/lvm2/Manifest
+++ b/sys-fs/lvm2/Manifest
@@ -32,6 +32,6 @@ AUX lvmlockd.initd-2.02.166-r1 390 BLAKE2B aebfa2a654eca784da24fd4e4d46b3e6c9725
AUX lvmpolld.initd-2.02.183 348 BLAKE2B cba0419add6591320dc60ef7616b66706e042b566284a4ec42002fbb5331a7173fc8b4b39be7198426fe4bbdcd3ad94b69fc3d8950705b6331c5f3f4cda4ad66 SHA512 b9b8376cbc8b6703868afab18e5baa4ef5354569e57f0596d38a8005fa725299f6858ac86b39fcca10e5a0f1adbd3a4cfa6cc6b62405e78916cc1287d8b36d0d
DIST LVM2.2.02.188.tgz 2421550 BLAKE2B bed90c8454cd4b20fdeec6dcbf5a9f97c9310671aea3b2252f8069cfa439fcb050f5ad95f928a7125a1734a4dc5ac985da99a4a570538e377a7205191a505476 SHA512 8c9db17c49dc8ebcab6c7f246ab85870a80658be811cf7f4d8f36abbebafa355b030bfc1e3bcbad73ccccb7fcd06d4a95ac547ca15d18d33715126da92703dca
DIST LVM2.2.03.14.tgz 2639538 BLAKE2B 806f5e9cb76a05febef6f8ce8cfc42c92927b9538f62a21029c5ffc426a4fd7c3f32709be08dbd8028b53891b1075d1d13cb3b0d7b1815071ee8eb927d8f3ed3 SHA512 6a93bed1d5cf36f0f48d4d413d028b0e480cd4fc20e25d173770a892f265d2a0cc68d01a720b1513469953649e989532cd0c45f9538f92a4190eb3dc4555857d
-EBUILD lvm2-2.02.188-r2.ebuild 10201 BLAKE2B b5e314a58938aac469c41deacfccbae61764e6935cdde28aaae27c793ba0fed0ddbd3606ddce0a16187aaa6755f8a513e56a20066c9222a9f439980a7c602579 SHA512 d7d1f489eb84101a5c98b2d40dc73742329aec811c0feaeb9ac459a04d2f018fd9ecc13913b70a2a3524df97e2e461106631d425bee4515c021da3385b5322e5
-EBUILD lvm2-2.03.14.ebuild 9711 BLAKE2B 1ae67efc26a6f77822786ffe6a4d1a92398f2676218515869a4573e0f3192894e0eeaf8116ff785c0948fea785b50ae190a51a56ace5085f23ee310a720a5bdb SHA512 43ba1592c735b6493e22f01ab5d1cec25b3a1ed5317507680d7e44d7a18495a170e9be13db4de2e719b4a97e961fb740b9a6f2901c1c94912eafe50acc238c78
-MISC metadata.xml 1035 BLAKE2B 363c4aefb6831140dbad128de1856a51025a267ec3f91c8e904623acd37f768241476e75c0445188a22892c1c7f63ad30302c7325f529c024d9cd0939dfba91d SHA512 6b4c9f27d96b1b90362db7d167d9f9b05f5f7f8d70394502d4cd581e8677c184ff05cf8474882902dce6c5ac746ec9c73d8a09ee8fb12ec48e006e13372c1f92
+EBUILD lvm2-2.02.188-r2.ebuild 10131 BLAKE2B 1fb4372993e615678e9f5f1a44bcb530ad959ec727a9db5e78bad15bdc32aba31825e75539780987cbede765f16d655d09d1d3cde1e88892fd3b7fa7794056fc SHA512 cb60df19a2ed209c0b47fd50637b1ab18788ac63c865b50e175e6e48b842a8ffa00f53a460305f6554f7a732763c705ba27b1e21e4a2f5a8cb81dbee32946374
+EBUILD lvm2-2.03.14.ebuild 9740 BLAKE2B a7457c9ba8a9f0c0bc31e6670a229f7f4ad27bb1d677650cc9cee3bce083a183ab93737ee7a5c4203b352e8b0a0ec7895ed2fb34e470250d5eee81ec3c0b4d0b SHA512 44722ccf1e9ec4a270a04a187244b267d0ed958dc2de3a1e5fa68318641d570d6f4498923fdb5ec353831b97c0bda2a8130b8d61b2e56fc5ac87eaf6a6e7638a
+MISC metadata.xml 1035 BLAKE2B b9a3162e72e1ea09c7530edca817046434186c3948ef763c1a4efedb45aa8f842b7819efdbb09fb40897368e61b26a43896ef28a4a9d1ae554ea3cdb81f88dc7 SHA512 a16653a343d66eab8bd790eb974cc95d75f48321051ebb37eef87b3c7ad9903b2be1f0c70aff4b711b4469fa2715a5fb0c8566c46e6a83173bf998cf182ce964
diff --git a/sys-fs/lvm2/lvm2-2.02.188-r2.ebuild b/sys-fs/lvm2/lvm2-2.02.188-r2.ebuild
index dcba617a6048..60cc0d980580 100644
--- a/sys-fs/lvm2/lvm2-2.02.188-r2.ebuild
+++ b/sys-fs/lvm2/lvm2-2.02.188-r2.ebuild
@@ -13,8 +13,8 @@ SRC_URI="ftp://sourceware.org/pub/lvm2/${PN/lvm/LVM}.${PV}.tgz
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="readline static static-libs systemd lvm2create_initrd sanlock selinux +udev +thin device-mapper-only"
-REQUIRED_USE="device-mapper-only? ( !lvm2create_initrd !sanlock !thin )
+IUSE="readline static static-libs systemd lvm2create-initrd sanlock selinux +udev +thin device-mapper-only"
+REQUIRED_USE="device-mapper-only? ( !lvm2create-initrd !sanlock !thin )
static? ( !systemd !udev )
static-libs? ( !udev )
systemd? ( udev )"
@@ -32,11 +32,8 @@ DEPEND_COMMON="
# This version of LVM is incompatible with cryptsetup <1.1.2.
RDEPEND="${DEPEND_COMMON}
>=sys-apps/baselayout-2.2
- !<sys-apps/openrc-0.11
- !<sys-fs/cryptsetup-1.1.2
- !!sys-fs/lvm-user
>=sys-apps/util-linux-2.16
- lvm2create_initrd? ( sys-apps/makedev )
+ lvm2create-initrd? ( sys-apps/makedev )
!device-mapper-only? ( virtual/tmpfiles )
thin? ( >=sys-block/thin-provisioning-tools-0.3.0 )"
# note: thin- 0.3.0 is required to avoid --disable-thin_check_needs_check
@@ -254,7 +251,7 @@ src_install() {
rm -f "${ED}"/usr/$(get_libdir)/{libdevmapper-event,liblvm2cmd,liblvm2app,libdevmapper}.a
fi
- if use lvm2create_initrd; then
+ if use lvm2create-initrd; then
dosbin scripts/lvm2create_initrd/lvm2create_initrd
doman scripts/lvm2create_initrd/lvm2create_initrd.8
newdoc scripts/lvm2create_initrd/README README.lvm2create_initrd
diff --git a/sys-fs/lvm2/lvm2-2.03.14.ebuild b/sys-fs/lvm2/lvm2-2.03.14.ebuild
index 1cc2795b71b0..d95b20485c02 100644
--- a/sys-fs/lvm2/lvm2-2.03.14.ebuild
+++ b/sys-fs/lvm2/lvm2-2.03.14.ebuild
@@ -13,8 +13,8 @@ SRC_URI="ftp://sourceware.org/pub/lvm2/${PN/lvm/LVM}.${PV}.tgz
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-IUSE="readline static static-libs systemd lvm2create_initrd sanlock selinux +udev +thin device-mapper-only"
-REQUIRED_USE="device-mapper-only? ( !lvm2create_initrd !sanlock !thin )
+IUSE="readline static static-libs systemd lvm2create-initrd sanlock selinux +udev +thin device-mapper-only"
+REQUIRED_USE="device-mapper-only? ( !lvm2create-initrd !sanlock !thin )
static? ( !systemd !udev )
static-libs? ( !udev )
systemd? ( udev )"
@@ -32,16 +32,14 @@ DEPEND_COMMON="
# This version of LVM is incompatible with cryptsetup <1.1.2.
RDEPEND="${DEPEND_COMMON}
>=sys-apps/baselayout-2.2
- !<sys-apps/openrc-0.11
- !<sys-fs/cryptsetup-1.1.2
- !!sys-fs/lvm-user
>=sys-apps/util-linux-2.16
- lvm2create_initrd? ( sys-apps/makedev )
+ lvm2create-initrd? ( sys-apps/makedev )
!device-mapper-only? ( virtual/tmpfiles )
thin? ( >=sys-block/thin-provisioning-tools-0.3.0 )"
# note: thin- 0.3.0 is required to avoid --disable-thin_check_needs_check
DEPEND="${DEPEND_COMMON}
static? (
+ readline? ( sys-libs/readline[static-libs] )
selinux? ( sys-libs/libselinux[static-libs] )
>=sys-apps/util-linux-2.16[static-libs]
)"
@@ -120,6 +118,10 @@ src_prepare() {
src_configure() {
filter-flags -flto
+
+ # Workaround for bug #822210
+ tc-ld-disable-gold
+
local myeconfargs=()
# Most of this package does weird stuff.
@@ -242,7 +244,7 @@ src_install() {
rm -f "${ED}"/usr/$(get_libdir)/{libdevmapper-event,liblvm2cmd,liblvm2app,libdevmapper}.a
fi
- if use lvm2create_initrd; then
+ if use lvm2create-initrd; then
dosbin scripts/lvm2create_initrd/lvm2create_initrd
doman scripts/lvm2create_initrd/lvm2create_initrd.8
newdoc scripts/lvm2create_initrd/README README.lvm2create_initrd
diff --git a/sys-fs/lvm2/metadata.xml b/sys-fs/lvm2/metadata.xml
index 75aaff4f1e52..e264bd799086 100644
--- a/sys-fs/lvm2/metadata.xml
+++ b/sys-fs/lvm2/metadata.xml
@@ -15,7 +15,7 @@
<description>Upstream Maintainer (please CC on bugs)</description>
</maintainer>
<use>
- <flag name="lvm2create_initrd">Install lvm2create_initrd script and pull in <pkg>sys-apps/makedev</pkg> for the /sbin/MAKEDEV command</flag>
+ <flag name="lvm2create-initrd">Install lvm2create_initrd script and pull in <pkg>sys-apps/makedev</pkg> for the /sbin/MAKEDEV command</flag>
<flag name="thin">Support for thin volumes</flag>
<flag name="device-mapper-only">Build only device-mapper and not the rest of LVM2 (UNSUPPORTED)</flag>
<flag name="sanlock">Enable lvmlockd with support for sanlock</flag>
diff --git a/sys-fs/mdadm/Manifest b/sys-fs/mdadm/Manifest
index 8b50dce2d41e..66dcb282ae6f 100644
--- a/sys-fs/mdadm/Manifest
+++ b/sys-fs/mdadm/Manifest
@@ -6,9 +6,9 @@ AUX mdadm.weekly 187 BLAKE2B 50048d84cd57b384b98fcdb6b2a4a18380aab6e76877ee9edd4
AUX mdraid.confd 383 BLAKE2B c61fd2c072a0d12ca21ad4f8a60a55101b4e452f9acc8cdcdf9a6069060b11bf90387830f516b69d266fef061112ba41f903b9371fff91c94c9332b12e436145 SHA512 37fe70f5df0fb2b68be01ee774e3a943cfb280322f2db0c5d6892e701fb58be26a225b78448814294bf68f154cca697278fcf9572a47b6201920d95ad05189d6
AUX mdraid.rc 759 BLAKE2B 41f1b4cb9dd29411d56bea656dddc2cb2fd3cc14b183d05c502fb5e29407d1d816de9595e13349ef7e03240308cf4395578be31149f59d1960d1feee0165506d SHA512 d76190646b393d1480607b0d89d08ce4196738295fbb7790fa1035c53a041b5cb88fe857bb2070920a9c3ae21b9fb8f7838dde240fa0e275e5915add9c113021
DIST mdadm-4.1.tar.xz 440756 BLAKE2B df0506d937c2aa309d7c68804f66f7dcd51783288594bf746832311c64b8cf82004af4af5f246c5f9753f1de324ff7d49b5ee752d6a00ec03864f7885389706e SHA512 0859c5d3e786345d93ff2c3b291ca8866ba60f1375479e5b4d343124f6824140a8268d42b8ae603b069edba761aa30aaf20d49e9ec54dfcbad34bad3bea0e433
-DIST mdadm-4.2-rc2.tar.xz 452724 BLAKE2B c13c031450a93a3e74c286a84cca541a32041ad7611a2a427539f8583404a9c1b7dffb2565d7cf72fe4b43c79e4dd144ad3b76c65193cc05c9f0da0bf08a8ee5 SHA512 09a3657284c7f98892f5be663d5e034252ff319d8ff1d235597efc373c156188d450e12f64a9a0fb9266b00035c1602133e487ce1961db1a12db05f7f9829249
+DIST mdadm-4.2-rc3.tar.xz 453332 BLAKE2B 1bab4e8702f1f0a1d2571e90409fcc58c4c7ad4e87cc224b714a842faa454e3a56f9e1852605c8c937a756b55d7dab19ac2bd1e72ce044efec101e526f19f4b1 SHA512 9d544181dca54e2cbdf724b3fab1f840e6a3c523ea0ecd712ef0aad77422a19512e64456adaed6c2e7db2c5dd237a1e7e79cd6202d8dd3d20543019257f39581
DIST mdadm_4.1-3.debian.tar.xz 89640 BLAKE2B 3cb5e42dcbd218a71e55127cecda6f2594a1b1691e17c05f52a8cd0ba05b556d2812772e53d78de025738d7c2de059df3f878b8290ba3906b3d75ef435bfb698 SHA512 e9b04abf195d7bda9fb0197eb926c01a69b879ef82c72af6497116cea9be8f0823408dddbe5c6c033f5fae554a8fec17299e361fa48045e033c87dcee1a0bb63
-DIST mdadm_4.2~rc2-1.debian.tar.xz 89160 BLAKE2B 055fb705fde6c47bf4187eb596e1bba3eb4b0e47f79e1b8d134f18dacb363dc3a434959a2d337a6e33b714d5b34b1359853fcfdc91d50b8f6ab14ad5015cdb51 SHA512 2900bae6b8133ddaaa29a83856b16ebe3ae5bb16aea4d252318392e6c789a11df16d874c101316e90df124b1dea0c939cd5b6fcb07f7c09abf5eabe1d2202113
+DIST mdadm_4.2~rc2-7.debian.tar.xz 89904 BLAKE2B dd04f2dd044d0bca85920eaf5c79a288d69c47a7ad7e36509a126c01ef63bd045d7e0530450650028de39d74ad852995ca080c3a73dbcb1cf1b3783118109f35 SHA512 3d36533d2713b663606919b2bfec18b15e18a6a0194e333e38e4a58f175da96af7b1fe16f0c36ee148e14492a4e0710b9fad6ac7856495b63c0176ebb7333be6
EBUILD mdadm-4.1.ebuild 2390 BLAKE2B f087e92607145b9e9235a4da6571d2a691a5f69072cfd40b183422411f4b1c8a41049b8350ff0761c79527afef6ca759e7dcdde42cd7c7bb6620795aef69da7d SHA512 b80d6eec601955155730be28e81fe8b260eeedb3eedc20edd677d5c56fd416ac5b8fac93ecad7047e3e28441437bd3f3b0359de0735933dc9454c31e961d56ea
-EBUILD mdadm-4.2_rc2.ebuild 2402 BLAKE2B 8c738fa38d12509b61c0248ce0eca4aea24c2d9faa3b4fdf878f83e0e18480861cb1ac81533b61d2d510a4a44a22f4d3a184b35572603381943fccf8ad833e79 SHA512 09d2e6c2f64e4d19f9c583d4de24e5219c30b41a3f7b584318975f5ef814930465bc52dd7af7557ead249849f2ed00fd38d8de27f0c9e8421dd4319b6085eaf7
+EBUILD mdadm-4.2_rc3.ebuild 2402 BLAKE2B 43d4ceabc63bd674592f4a1827c62f943d5ddc7db5dc4c37d3f09a6459dd219bd190dc60384a3749e84af85bd4fad1729cf2c2fa133f8d97aaf4cfc8a130659b SHA512 49c6c50b8e5a2c0a8aa9411f6bfca264de4f522dddcc48241a53ae2e839e239c6e86eea23e582564ca6d3aea30019f64a3daa0defb4c77ec904924b554cd918f
MISC metadata.xml 339 BLAKE2B 68b5c6f497a2396786b76d8cb10a076933ebff54b319ccaba2d8c5af18fb62a56519c5a42b248d7a92624514f3de635be5ff1180ef0b0a7deb8d391324680560 SHA512 3aba8c92057ff5dc92e2a9455f986bea0fcfb84d4c7ecbca2782d983cbd6ca11c1ee4443a217cbaea87d2903659390b04b26adc156782a2672d249254925071b
diff --git a/sys-fs/mdadm/mdadm-4.2_rc2.ebuild b/sys-fs/mdadm/mdadm-4.2_rc3.ebuild
index 148a4e327326..dc6f83ae0408 100644
--- a/sys-fs/mdadm/mdadm-4.2_rc2.ebuild
+++ b/sys-fs/mdadm/mdadm-4.2_rc3.ebuild
@@ -6,7 +6,7 @@ inherit flag-o-matic multilib systemd toolchain-funcs udev
DESCRIPTION="Tool for running RAID systems - replacement for the raidtools"
HOMEPAGE="https://git.kernel.org/pub/scm/utils/mdadm/mdadm.git/"
-DEB_PF="4.2~rc2-1"
+DEB_PF="4.2~rc2-7"
SRC_URI="https://www.kernel.org/pub/linux/utils/raid/mdadm/${P/_/-}.tar.xz
mirror://debian/pool/main/m/mdadm/${PN}_${DEB_PF}.debian.tar.xz"
diff --git a/sys-fs/ntfs3g/Manifest b/sys-fs/ntfs3g/Manifest
index 4462b1363ce0..fab1fb8800ae 100644
--- a/sys-fs/ntfs3g/Manifest
+++ b/sys-fs/ntfs3g/Manifest
@@ -1,5 +1,4 @@
-DIST ntfs-3g_ntfsprogs-2017.3.23AR.5.tgz 1278315 BLAKE2B d4f84bf744b12fec7faff82bd3d3048282a3cbcde2ca75e5d3a295206585c4cee68e25dff5fb20b034f516a3f2cd95c489105d9df810f8a9378024ef065b67d3 SHA512 8534970ba9f07999c5ff433144ad3a59640fb9a28fb30b37b5d736101e19f9fec1c222152338be382c894f972fce2b2a83680b85a28cf147cb5500b40a0a25cc
DIST ntfs-3g_ntfsprogs-2021.8.22.tgz 1317499 BLAKE2B 403036c68a37ba83873b5faadbb2088deb25e0ff31deb1958d4f869a198d830caa44edea879492a7894f5e7a5ad6205a6fda57bf8de722ce49bf3187239ad993 SHA512 e0544df78a6c352999e1206d7b5d71c56e39396b7a0936a261d728c2ac9d61c6b95ef297f8529ac2a5146f31c1c9e43066d3e281064d4f5d781a04eba51f536d
-EBUILD ntfs3g-2017.3.23.5-r1.ebuild 2063 BLAKE2B d70e46fe59628db9440f4d6516781fad6d9d10873f98b06364acd4c8afbc6b609f78fca688fbb1c4486ae6cd7a0089a6c3674b8555fec8af4360b6c7e4ac54b1 SHA512 fbf424b708a4e15fabdffb1046dd49854ed21335bf953fe39eb8993541178cfd3ffe482121d29c56b5dd5802c373d8aaaa70e0ae9dc6526f091baa886950bf36
-EBUILD ntfs3g-2021.8.22.ebuild 2094 BLAKE2B 0d482ef348d1d375ea0527062d433d967e47b7c9ca633bcb596a90d4a18d4b2d9dc125380c177c9d31269a3031861a181800953137c444ccfcfe6ca68d98869e SHA512 79e9b31bd21941cb511b3d4f8d86be88fa9a0e9912be4f46ce9c8341688e0edbf6118aa8ee6577c357761787126df5a1e03dcd965a8f131f4b880c39c67ed4c0
-MISC metadata.xml 1072 BLAKE2B cbfb93f83a25bb707c6584f035d742513da2e423ec1f52fcebf25b6b34829bc429f7fbc38e2e3e76dd5ad2eca5f28d91072a0000ef83277bf84553aa6ff1e6b5 SHA512 2afcc34189ca0708f6d1cd15e9e249dc3ac0a150f4094c97a0d5745ca0b21f426676c3090df031cc8f234da38b2d13abb8ddf1583b9049d52ce2737833ee9314
+EBUILD ntfs3g-2021.8.22-r3.ebuild 2044 BLAKE2B d16a408891fdb5b368df38e338ff6f08822db2cb817f12c33ccb24c818fb8b71b2cba38cc70d1a6c8cba25cfb747d11bebcd682cdb7809b07048d20fb3dcbc19 SHA512 58dec845c63767f2b76df43963ffa4dc02f771792cbc8d2bb83da5a31ffad382de72f412a3d2690fb77447ef9c9d256a3f7aaf542aadd2ebf674a34e7494f5e5
+EBUILD ntfs3g-2021.8.22.ebuild 2078 BLAKE2B 236f32ff2a280c8c42d84cb66b5a9aea465e0d9ef4095991406d40edd59a98b396598698318098762be665bb62c4c917abac68015a01a2183b28066acb24c25d SHA512 7bf7851726792dcadf394cb7278723a4a9a59f425c362bde4a2128e60e0c5677a286a4c02596c15f05b29830074891166b774a58f4c9c566c6272da29b04c1ae
+MISC metadata.xml 1164 BLAKE2B 276dcf2d0cccad4b91a84390949ff8a81b76e54c22d7bfbe4b778c97917224f3d0603079fb74e4b3ff0e058580f4ac6540aef3bae4fdc6ae9b2fb54b831e22ea SHA512 63391014c4dc8ba722c8f90d6fe1952b5f4386d44b1bb2af195e907e5027ede0f4063e4390679b6b521b892fcc12194914b4f40a09c6bc08a300a90bdd250390
diff --git a/sys-fs/ntfs3g/metadata.xml b/sys-fs/ntfs3g/metadata.xml
index 9b2852a0591a..910a26c2caf5 100644
--- a/sys-fs/ntfs3g/metadata.xml
+++ b/sys-fs/ntfs3g/metadata.xml
@@ -16,8 +16,10 @@
file ownership, access right.
</longdescription>
<use>
+ <flag name="fuse">Enable ntfs-3g FUSE driver</flag>
+ <flag name="mount-ntfs">Install mount.ntfs symlink</flag>
<flag name="ntfsdecrypt">Build and install the ntfsdecrypt application.</flag>
- <flag name="ntfsprogs">Include internal version of ntfsprogs.</flag>
+ <flag name="ntfsprogs">Enable ntfsprogs</flag>
</use>
<upstream>
<bugs-to>http://tuxera.com/forum/</bugs-to>
diff --git a/sys-fs/ntfs3g/ntfs3g-2017.3.23.5-r1.ebuild b/sys-fs/ntfs3g/ntfs3g-2021.8.22-r3.ebuild
index 17c8330cd5b4..28102ca67d43 100644
--- a/sys-fs/ntfs3g/ntfs3g-2017.3.23.5-r1.ebuild
+++ b/sys-fs/ntfs3g/ntfs3g-2021.8.22-r3.ebuild
@@ -1,22 +1,22 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 2006-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit linux-info toolchain-funcs
-MY_P="ntfs-3g_ntfsprogs-${PV%.*}AR.${PV##*.}"
+inherit toolchain-funcs
+
+MY_P="ntfs-3g_ntfsprogs-${PV}"
DESCRIPTION="Open source read-write NTFS driver that runs under FUSE"
HOMEPAGE="http://www.tuxera.com/community/ntfs-3g-download/"
HOMEPAGE="https://jp-andre.pagesperso-orange.fr/advanced-ntfs-3g.html"
-#SRC_URI="http://tuxera.com/opensource/${MY_P}.tgz"
-SRC_URI="https://jp-andre.pagesperso-orange.fr/${MY_P}.tgz"
+SRC_URI="http://tuxera.com/opensource/${MY_P}.tgz"
LICENSE="GPL-2"
# The subslot matches the SONAME major #.
-SLOT="0/885"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ppc ppc64 sparc x86 ~amd64-linux ~x86-linux"
-IUSE="acl debug ntfsdecrypt +ntfsprogs static-libs suid xattr"
+SLOT="0/89"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="acl debug +fuse +mount-ntfs ntfsdecrypt +ntfsprogs static-libs suid xattr"
RDEPEND="
sys-apps/util-linux:0=
@@ -34,12 +34,6 @@ BDEPEND="
S="${WORKDIR}/${MY_P}"
-pkg_setup() {
- CONFIG_CHECK="~FUSE_FS"
- FUSE_FS_WARNING="You need to have FUSE module built to use ntfs-3g"
- linux-info_pkg_setup
-}
-
src_configure() {
tc-ld-disable-gold
@@ -52,6 +46,7 @@ src_configure() {
--disable-ldconfig
--enable-extras
$(use_enable debug)
+ $(use_enable fuse ntfs-3g)
$(use_enable acl posix-acls)
$(use_enable xattr xattr-mappings)
$(use_enable ntfsdecrypt crypto)
@@ -64,6 +59,10 @@ src_configure() {
# disable hd library until we have the right library in the tree and
# don't links to hwinfo one causing issues like bug #602360
--without-hd
+
+ # Needed for suid
+ # https://bugs.gentoo.org/822024
+ --with-fuse=internal
)
econf "${myconf[@]}"
@@ -71,9 +70,15 @@ src_configure() {
src_install() {
default
- use suid && fperms u+s /usr/bin/ntfs-3g
- dosym mount.ntfs-3g /sbin/mount.ntfs
- find "${D}" -name '*.la' -type f -delete || die
- # https://bugs.gentoo.org/760780
- keepdir "/usr/$(get_libdir)/ntfs-3g"
+ if use fuse; then
+ # Plugins directory
+ keepdir "/usr/$(get_libdir)/ntfs-3g"
+ if use suid; then
+ fperms u+s /usr/bin/ntfs-3g
+ fi
+ if use mount-ntfs; then
+ dosym mount.ntfs-3g /sbin/mount.ntfs
+ fi
+ fi
+ find "${ED}" -name '*.la' -type f -delete || die
}
diff --git a/sys-fs/ntfs3g/ntfs3g-2021.8.22.ebuild b/sys-fs/ntfs3g/ntfs3g-2021.8.22.ebuild
index 73800e129e54..64a938dc180b 100644
--- a/sys-fs/ntfs3g/ntfs3g-2021.8.22.ebuild
+++ b/sys-fs/ntfs3g/ntfs3g-2021.8.22.ebuild
@@ -16,7 +16,7 @@ LICENSE="GPL-2"
# The subslot matches the SONAME major #.
SLOT="0/89"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux"
-IUSE="acl debug ntfsdecrypt +ntfsprogs static-libs suid xattr"
+IUSE="acl debug +mount-ntfs ntfsdecrypt +ntfsprogs static-libs xattr"
RDEPEND="
sys-apps/util-linux:0=
@@ -74,8 +74,7 @@ src_configure() {
src_install() {
default
- use suid && fperms u+s /usr/bin/ntfs-3g
- dosym mount.ntfs-3g /sbin/mount.ntfs
+ use mount-ntfs && dosym mount.ntfs-3g /sbin/mount.ntfs
find "${ED}" -name '*.la' -type f -delete || die
# https://bugs.gentoo.org/760780
keepdir "/usr/$(get_libdir)/ntfs-3g"
diff --git a/sys-fs/zfs-kmod/Manifest b/sys-fs/zfs-kmod/Manifest
index 10403340c068..5319dff6c58e 100644
--- a/sys-fs/zfs-kmod/Manifest
+++ b/sys-fs/zfs-kmod/Manifest
@@ -1,11 +1,13 @@
AUX 0.8.6-copy-builtin.patch 988 BLAKE2B f79add4b341075e3cd98b6aee4bb74b8fadd28b5ee1062f9260c0418909d380cdd2d637b52d4959ec19cafec1e55b1d05cd6bc358fdffbd6dc1b159e9935083d SHA512 af6b73a2d9d1b4e028c9b959950934798f4d048211d6e4a7e94595982ad2dc8bb4befd52122e3fa0890548e192f2f2ae41d877cad057543e940a7c2710c81a23
+AUX 2.1.1-SEEK_DATA-SEEK_HOLE.patch 19794 BLAKE2B c3259c50e96e7c28a8d6a18693674c1a6b233fb8eb1cbdd4a4c87e085b0b787c8b512231f109c4600da1a7a571c6129a3acd904303967543c1a12bb1042ed2b5 SHA512 098d0b6cb25fb90ac987e7e0913b2681a297bf3138d6708d4f4bb9b6402f0ec71f4848c50bbec6ef006208f40fa709b1d58ca46c9cbf08a125a9165f83287c52
+AUX 2.1.1-restore-dirty-dnode-logic.patch 1075 BLAKE2B 04720dbfb3f4fc223c329dee330330a94224119dcdfb7240c8bb629fbc4f8206acf95c021219844ad289ddcd2cced7b686418d9f59c3c21d2b08d029100fa29d SHA512 5122de3b1fa9875d47afe52da624a25c1b24ad917ee195769828efdb3c510c709b1cee95914e0a0f2959b41324ac0b61fe77675901dfd95955994d52434b8c3a
DIST zfs-0.8.6.tar.gz 9295260 BLAKE2B 45424d710aaf75a05f766ae523ae157a24b5cbdcefe72a59e4cede81e42f7a92ae7f01150388437b78cd49f3d28b9664599f2a624516e6b3f1073497194a99f2 SHA512 626b172554f39a5c70f6ea5c599a92fae52534590d1b0273de2bbfc3676d29dff0eade8ca17e5f179a59870c12bc758fb53b7900f8a1fdbdef3a9161b93f9cce
DIST zfs-2.0.6.tar.gz 13192941 BLAKE2B 3a83303b016ec4259c286af8a9ceb281829d26508d411df91dd94193bca8c3155ef0ba63604e95f6add5f0c6cf6d100b0f567efc33b6c484c9ff811924da6ccd SHA512 52a5576eed21868b2a3d63d05d3d8c35b5e59ee88c7ddab1dc070644539f9acd56bde43ba5e965ad951a6d50a014fb429a7977d2ab1a2bfcadd92ea78dd57bf8
DIST zfs-2.0.6.tar.gz.asc 836 BLAKE2B 065eba3361ef4234acc67df0236ab9a6737ba9fe5a706be98b55dd64d10360160ca787d8873f27451a2107225ae657dc4cab20a7c2a268cd2de64c8d82d0327a SHA512 123569ecfcee22ac462160acf61b120144c774bc5c0d46a50d2b7312f7565da1a9d780e1a6207dba5834917c66d5b852763e4a3162378d5c9bb90b0dfde35c5c
DIST zfs-2.1.1.tar.gz 34836374 BLAKE2B 09ee6bd30e8266342bd975454086049c3fd9142e7dacfe52166575c20e3c92688f9b457d75b2a2068fc281e65f78e1d47450545504cdf8bc31e23663545d7800 SHA512 b69ce764a9f7438ec2c90f86be02abfd684c67cd38de876374e3e6f4b2f82a75d86fa70205def2ba454ad27e52ec8d955ebc4ba456e91d397129a54ea849c19c
DIST zfs-2.1.1.tar.gz.asc 195 BLAKE2B d886e7dc74270228f98dfc5ca85bbbe897d5a87a5ae8bbfde28e2af1b36218227bc9f1b5902e97beebe160a298857d6e4673829d87cd8039332dc1858cfcffc0 SHA512 d76956b5c1bd547a319e70dd33d50beae39f65fca54532731426d2ef209385a556c51b3936051f75bc3800623c42da5b8d279c51f501a896f5fdfb7b4ed7fb94
-EBUILD zfs-kmod-0.8.6.ebuild 5481 BLAKE2B a367b1cec0374f6c9266bf599944ef5493eae21a91704572f806ec2486707a6d3cae876f52f97d527744c66596204b2dcdb435b2beb7cd182ca524cb991f8915 SHA512 014332fa562aae19d65c3f31ba1179e0c623dc3293e45e51323bb2b279641ee6926ac9d8cca3aba8407b44a2787be19abbaa3945f48e6e40f9aa27b1458e647a
-EBUILD zfs-kmod-2.0.6.ebuild 5524 BLAKE2B 92a1d66c9d994129b54957858eb2235f018df88e4a564a7dcfbe0a7d0d558dbbb81661a48fa0d6bc8a745cfff08b2d5f01a1263d2ef7a6b509d4ea4439d06e39 SHA512 37ca8be74fa3dbca773c76ddd60dcb9ce790e92174d400c4abb0837e6bce6dee24a3cdfa0366fa5e6bb196691ac9a17c976ee272516b2a918b872741f7c9fd23
-EBUILD zfs-kmod-2.1.1.ebuild 4740 BLAKE2B 8706911cc8e55df54477c0c00c6a36e0c1444154be4ef3c0a0e6bd53790550aa54fe70ed3719fa5a09f1fc0bf1d165ac821f756cccbc3c5cdeda5029d2056b97 SHA512 58f44cd588e4b4afdcf2f7d1d102b42a7b1767dd196f6d85cd2daf1d084ebf2586ade44f3c66ce56613fa0bad09a21c44c529584cbc630ec9f7e28c890a09e04
-EBUILD zfs-kmod-9999.ebuild 4722 BLAKE2B 559e7c1574b6f22a8e251fbad495cbd4341f58a496bf0cfb6c6f188ec5cb8091fa8514e485ae327f83ad1e80bff8a3e67b9cb55a4f5fb8e96a66205b9c1c17e7 SHA512 3e9ee32d5906dd3a0fa9f630309a89ecb5ea095f96e3ec1feec3db0faf02c23cfba37e472ada753f1f7e46186d9ec33ea86e6f9b30cf3e7a3dc995217c9458bc
+EBUILD zfs-kmod-0.8.6.ebuild 5749 BLAKE2B 867ba8d060dc08eae4027d8c6e17f8ed31f429c87cc0ad9faa88aab0ee60d91e0a2a1d0b9dc59974d3c406a6266d4a4f752dab9e909a0df18ddf5c65152e6e13 SHA512 3f7303584c5324ed8715cd5a473344564ce2862b3e730722ac128a758f2750c1cb3ab2521185eae6e237ec1aa5dda82b8780009a51fc6798e27fc45b18c96f6a
+EBUILD zfs-kmod-2.0.6.ebuild 6045 BLAKE2B 02a899203203caf05268bebd5e275aefdfb6ebdf71feecc9df9c3e5d861f635d8b0632afb51edf62450b2c82cf58396d3df812b721fd40906655c16aa7280b67 SHA512 d25e34726710e9b2bfda4467f03df4376cce9eb988c4449d54aeee47c7d7c717326e9e56d58fb69d8bfff47fb6a0a1f69d4cb8ca5cf28a7efa29f76f8caccf83
+EBUILD zfs-kmod-2.1.1-r3.ebuild 5584 BLAKE2B 29b6b8e78b9f9cbe872977ada4ae2a10cf2ae31dd02077065c2b383f87829a552ad6e06363a7734934d1edc6758fbe068e5a8e90b44a7427110c66f67e1eee1b SHA512 1f5723a243e4d39bce5e57e132b540b5ac83371ae1262e641996f5a19eabbbe077e4f1756a9db465db01009f776578c54ef56cbabfa166355ea3f76979198ce2
+EBUILD zfs-kmod-9999.ebuild 5243 BLAKE2B fb00deb56979862a3249a9be33dc438153945dc38384473c6d24534d9cbde56fc17b5dde81c110239dd8945079417a912f614f611be1b036106201fde4028125 SHA512 a3ade0ec20a34b0e28f8af9a674c3124c283097b405b222d4518122e81cf6a215aa1eacfed1d6beea04c782af3b8a2c9b8763188dfd94f9a94f10e6a6ebb0199
MISC metadata.xml 549 BLAKE2B ae860684a4cf82c277fe91d11e0bcf283103a08442e78584c9962b1571efed7e6ee0e215f3341263f809978e63e01d70275a80fa4996b8265569539e0b2ffe34 SHA512 7a97c7965147549da470c9d5d3a541284964c5ec276d005a2f7aa1a4550c915cce32b2593257e5ad373c84955e3bf74b235297d540364ee4a17cf9e1e705b650
diff --git a/sys-fs/zfs-kmod/files/2.1.1-SEEK_DATA-SEEK_HOLE.patch b/sys-fs/zfs-kmod/files/2.1.1-SEEK_DATA-SEEK_HOLE.patch
new file mode 100644
index 000000000000..458fe279ee23
--- /dev/null
+++ b/sys-fs/zfs-kmod/files/2.1.1-SEEK_DATA-SEEK_HOLE.patch
@@ -0,0 +1,594 @@
+From 664d487a5dbd758216ac613934a4080fcc1de347 Mon Sep 17 00:00:00 2001
+From: Brian Behlendorf <behlendorf1@llnl.gov>
+Date: Sun, 7 Nov 2021 13:27:44 -0800
+Subject: [PATCH] Fix lseek(SEEK_DATA/SEEK_HOLE) mmap consistency
+
+When using lseek(2) to report data/holes memory mapped regions of
+the file were ignored. This could result in incorrect results.
+To handle this zfs_holey_common() was updated to asynchronously
+writeback any dirty mmap(2) regions prior to reporting holes.
+
+Additionally, while not strictly required, the dn_struct_rwlock is
+now held over the dirty check to prevent the dnode structure from
+changing. This ensures that a clean dnode can't be dirtied before
+the data/hole is located. The range lock is now also taken to
+ensure the call cannot race with zfs_write().
+
+Furthermore, the code was refactored to provide a dnode_is_dirty()
+helper function which checks the dnode for any dirty records to
+determine its dirtiness.
+
+Reviewed-by: Matthew Ahrens <mahrens@delphix.com>
+Reviewed-by: Tony Hutter <hutter2@llnl.gov>
+Reviewed-by: Rich Ercolani <rincebrain@gmail.com>
+Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
+Issue #11900
+Closes #12724
+---
+ configure.ac | 1 +
+ include/os/freebsd/spl/sys/vnode.h | 18 +++
+ include/os/freebsd/zfs/sys/zfs_znode_impl.h | 3 +-
+ include/os/linux/zfs/sys/zfs_znode_impl.h | 1 +
+ include/sys/dnode.h | 1 +
+ man/man4/zfs.4 | 2 +-
+ module/zfs/dmu.c | 53 ++++---
+ module/zfs/dnode.c | 20 +++
+ module/zfs/zfs_vnops.c | 9 +-
+ tests/runfiles/common.run | 2 +-
+ tests/zfs-tests/cmd/Makefile.am | 1 +
+ tests/zfs-tests/cmd/mmap_seek/.gitignore | 1 +
+ tests/zfs-tests/cmd/mmap_seek/Makefile.am | 6 +
+ tests/zfs-tests/cmd/mmap_seek/mmap_seek.c | 147 ++++++++++++++++++
+ tests/zfs-tests/include/commands.cfg | 1 +
+ tests/zfs-tests/include/tunables.cfg | 1 +
+ .../tests/functional/mmap/Makefile.am | 3 +-
+ .../functional/mmap/mmap_seek_001_pos.ksh | 67 ++++++++
+ 18 files changed, 305 insertions(+), 32 deletions(-)
+ create mode 100644 tests/zfs-tests/cmd/mmap_seek/.gitignore
+ create mode 100644 tests/zfs-tests/cmd/mmap_seek/Makefile.am
+ create mode 100644 tests/zfs-tests/cmd/mmap_seek/mmap_seek.c
+ create mode 100755 tests/zfs-tests/tests/functional/mmap/mmap_seek_001_pos.ksh
+
+diff --git a/configure.ac b/configure.ac
+index 6f34b210d2b..ebc7b276a64 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -221,6 +221,7 @@ AC_CONFIG_FILES([
+ tests/zfs-tests/cmd/mktree/Makefile
+ tests/zfs-tests/cmd/mmap_exec/Makefile
+ tests/zfs-tests/cmd/mmap_libaio/Makefile
++ tests/zfs-tests/cmd/mmap_seek/Makefile
+ tests/zfs-tests/cmd/mmapwrite/Makefile
+ tests/zfs-tests/cmd/nvlist_to_lua/Makefile
+ tests/zfs-tests/cmd/randfree_file/Makefile
+diff --git a/include/os/freebsd/spl/sys/vnode.h b/include/os/freebsd/spl/sys/vnode.h
+index 3670712a045..3bc8a18eeb7 100644
+--- a/include/os/freebsd/spl/sys/vnode.h
++++ b/include/os/freebsd/spl/sys/vnode.h
+@@ -59,6 +59,8 @@ enum symfollow { NO_FOLLOW = NOFOLLOW };
+ #include <sys/file.h>
+ #include <sys/filedesc.h>
+ #include <sys/syscallsubr.h>
++#include <sys/vm.h>
++#include <vm/vm_object.h>
+
+ typedef struct vop_vector vnodeops_t;
+ #define VOP_FID VOP_VPTOFH
+@@ -83,6 +85,22 @@ vn_is_readonly(vnode_t *vp)
+ #define vn_has_cached_data(vp) \
+ ((vp)->v_object != NULL && \
+ (vp)->v_object->resident_page_count > 0)
++
++static __inline void
++vn_flush_cached_data(vnode_t *vp, boolean_t sync)
++{
++#if __FreeBSD_version > 1300054
++ if (vm_object_mightbedirty(vp->v_object)) {
++#else
++ if (vp->v_object->flags & OBJ_MIGHTBEDIRTY) {
++#endif
++ int flags = sync ? OBJPC_SYNC : 0;
++ zfs_vmobject_wlock(vp->v_object);
++ vm_object_page_clean(vp->v_object, 0, 0, flags);
++ zfs_vmobject_wunlock(vp->v_object);
++ }
++}
++
+ #define vn_exists(vp) do { } while (0)
+ #define vn_invalid(vp) do { } while (0)
+ #define vn_renamepath(tdvp, svp, tnm, lentnm) do { } while (0)
+diff --git a/include/os/freebsd/zfs/sys/zfs_znode_impl.h b/include/os/freebsd/zfs/sys/zfs_znode_impl.h
+index e90008c70a8..edb28d041a0 100644
+--- a/include/os/freebsd/zfs/sys/zfs_znode_impl.h
++++ b/include/os/freebsd/zfs/sys/zfs_znode_impl.h
+@@ -118,7 +118,8 @@ extern minor_t zfsdev_minor_alloc(void);
+ #define Z_ISLNK(type) ((type) == VLNK)
+ #define Z_ISDIR(type) ((type) == VDIR)
+
+-#define zn_has_cached_data(zp) vn_has_cached_data(ZTOV(zp))
++#define zn_has_cached_data(zp) vn_has_cached_data(ZTOV(zp))
++#define zn_flush_cached_data(zp, sync) vn_flush_cached_data(ZTOV(zp), sync)
+ #define zn_rlimit_fsize(zp, uio) \
+ vn_rlimit_fsize(ZTOV(zp), GET_UIO_STRUCT(uio), zfs_uio_td(uio))
+
+diff --git a/include/os/linux/zfs/sys/zfs_znode_impl.h b/include/os/linux/zfs/sys/zfs_znode_impl.h
+index 0a6273442b7..de46fc8f2bd 100644
+--- a/include/os/linux/zfs/sys/zfs_znode_impl.h
++++ b/include/os/linux/zfs/sys/zfs_znode_impl.h
+@@ -71,6 +71,7 @@ extern "C" {
+ #define Z_ISDIR(type) S_ISDIR(type)
+
+ #define zn_has_cached_data(zp) ((zp)->z_is_mapped)
++#define zn_flush_cached_data(zp, sync) write_inode_now(ZTOI(zp), sync)
+ #define zn_rlimit_fsize(zp, uio) (0)
+
+ /*
+diff --git a/include/sys/dnode.h b/include/sys/dnode.h
+index 2cdc5b8798a..af8775b9ee0 100644
+--- a/include/sys/dnode.h
++++ b/include/sys/dnode.h
+@@ -425,6 +425,7 @@ boolean_t dnode_add_ref(dnode_t *dn, void *ref);
+ void dnode_rele(dnode_t *dn, void *ref);
+ void dnode_rele_and_unlock(dnode_t *dn, void *tag, boolean_t evicting);
+ int dnode_try_claim(objset_t *os, uint64_t object, int slots);
++boolean_t dnode_is_dirty(dnode_t *dn);
+ void dnode_setdirty(dnode_t *dn, dmu_tx_t *tx);
+ void dnode_set_dirtyctx(dnode_t *dn, dmu_tx_t *tx, void *tag);
+ void dnode_sync(dnode_t *dn, dmu_tx_t *tx);
+diff --git a/man/man4/zfs.4 b/man/man4/zfs.4
+index 2aed6895754..20b24d898d8 100644
+--- a/man/man4/zfs.4
++++ b/man/man4/zfs.4
+@@ -1574,7 +1574,7 @@ Allow no-operation writes.
+ The occurrence of nopwrites will further depend on other pool properties
+ .Pq i.a. the checksumming and compression algorithms .
+ .
+-.It Sy zfs_dmu_offset_next_sync Ns = Ns Sy 0 Ns | ns 1 Pq int
++.It Sy zfs_dmu_offset_next_sync Ns = Ns Sy 0 Ns | Ns 1 Pq int
+ Enable forcing TXG sync to find holes.
+ When enabled forces ZFS to act like prior versions when
+ .Sy SEEK_HOLE No or Sy SEEK_DATA
+diff --git a/module/zfs/dmu.c b/module/zfs/dmu.c
+index 1c47430953b..8302d506146 100644
+--- a/module/zfs/dmu.c
++++ b/module/zfs/dmu.c
+@@ -2095,42 +2095,41 @@ int
+ dmu_offset_next(objset_t *os, uint64_t object, boolean_t hole, uint64_t *off)
+ {
+ dnode_t *dn;
+- int i, err;
+- boolean_t clean = B_TRUE;
++ int err;
+
++restart:
+ err = dnode_hold(os, object, FTAG, &dn);
+ if (err)
+ return (err);
+
+- /*
+- * Check if dnode is dirty
+- */
+- for (i = 0; i < TXG_SIZE; i++) {
+- if (multilist_link_active(&dn->dn_dirty_link[i])) {
+- clean = B_FALSE;
+- break;
+- }
+- }
++ rw_enter(&dn->dn_struct_rwlock, RW_READER);
+
+- /*
+- * If compatibility option is on, sync any current changes before
+- * we go trundling through the block pointers.
+- */
+- if (!clean && zfs_dmu_offset_next_sync) {
+- clean = B_TRUE;
+- dnode_rele(dn, FTAG);
+- txg_wait_synced(dmu_objset_pool(os), 0);
+- err = dnode_hold(os, object, FTAG, &dn);
+- if (err)
+- return (err);
+- }
++ if (dnode_is_dirty(dn)) {
++ /*
++ * If the zfs_dmu_offset_next_sync module option is enabled
++ * then strict hole reporting has been requested. Dirty
++ * dnodes must be synced to disk to accurately report all
++ * holes. When disabled (the default) dirty dnodes are
++ * reported to not have any holes which is always safe.
++ *
++ * When called by zfs_holey_common() the zp->z_rangelock
++ * is held to prevent zfs_write() and mmap writeback from
++ * re-dirtying the dnode after txg_wait_synced().
++ */
++ if (zfs_dmu_offset_next_sync) {
++ rw_exit(&dn->dn_struct_rwlock);
++ dnode_rele(dn, FTAG);
++ txg_wait_synced(dmu_objset_pool(os), 0);
++ goto restart;
++ }
+
+- if (clean)
+- err = dnode_next_offset(dn,
+- (hole ? DNODE_FIND_HOLE : 0), off, 1, 1, 0);
+- else
+ err = SET_ERROR(EBUSY);
++ } else {
++ err = dnode_next_offset(dn, DNODE_FIND_HAVELOCK |
++ (hole ? DNODE_FIND_HOLE : 0), off, 1, 1, 0);
++ }
+
++ rw_exit(&dn->dn_struct_rwlock);
+ dnode_rele(dn, FTAG);
+
+ return (err);
+diff --git a/module/zfs/dnode.c b/module/zfs/dnode.c
+index 7f741542ce0..572d88ec2bf 100644
+--- a/module/zfs/dnode.c
++++ b/module/zfs/dnode.c
+@@ -1648,6 +1648,26 @@ dnode_try_claim(objset_t *os, uint64_t object, int slots)
+ slots, NULL, NULL));
+ }
+
++/*
++ * Checks if the dnode contains any uncommitted dirty records.
++ */
++boolean_t
++dnode_is_dirty(dnode_t *dn)
++{
++ mutex_enter(&dn->dn_mtx);
++
++ for (int i = 0; i < TXG_SIZE; i++) {
++ if (list_head(&dn->dn_dirty_records[i]) != NULL) {
++ mutex_exit(&dn->dn_mtx);
++ return (B_TRUE);
++ }
++ }
++
++ mutex_exit(&dn->dn_mtx);
++
++ return (B_FALSE);
++}
++
+ void
+ dnode_setdirty(dnode_t *dn, dmu_tx_t *tx)
+ {
+diff --git a/module/zfs/zfs_vnops.c b/module/zfs/zfs_vnops.c
+index 8229bc9a93e..170e392abe9 100644
+--- a/module/zfs/zfs_vnops.c
++++ b/module/zfs/zfs_vnops.c
+@@ -85,6 +85,7 @@ zfs_fsync(znode_t *zp, int syncflag, cred_t *cr)
+ static int
+ zfs_holey_common(znode_t *zp, ulong_t cmd, loff_t *off)
+ {
++ zfs_locked_range_t *lr;
+ uint64_t noff = (uint64_t)*off; /* new offset */
+ uint64_t file_sz;
+ int error;
+@@ -100,12 +101,18 @@ zfs_holey_common(znode_t *zp, ulong_t cmd, loff_t *off)
+ else
+ hole = B_FALSE;
+
++ /* Flush any mmap()'d data to disk */
++ if (zn_has_cached_data(zp))
++ zn_flush_cached_data(zp, B_FALSE);
++
++ lr = zfs_rangelock_enter(&zp->z_rangelock, 0, file_sz, RL_READER);
+ error = dmu_offset_next(ZTOZSB(zp)->z_os, zp->z_id, hole, &noff);
++ zfs_rangelock_exit(lr);
+
+ if (error == ESRCH)
+ return (SET_ERROR(ENXIO));
+
+- /* file was dirty, so fall back to using generic logic */
++ /* File was dirty, so fall back to using generic logic */
+ if (error == EBUSY) {
+ if (hole)
+ *off = file_sz;
+diff --git a/tests/runfiles/common.run b/tests/runfiles/common.run
+index a62cd6ad39f..97ee7b8ae24 100644
+--- a/tests/runfiles/common.run
++++ b/tests/runfiles/common.run
+@@ -669,7 +669,7 @@ tests = ['migration_001_pos', 'migration_002_pos', 'migration_003_pos',
+ tags = ['functional', 'migration']
+
+ [tests/functional/mmap]
+-tests = ['mmap_write_001_pos', 'mmap_read_001_pos']
++tests = ['mmap_write_001_pos', 'mmap_read_001_pos', 'mmap_seek_001_pos']
+ tags = ['functional', 'mmap']
+
+ [tests/functional/mount]
+diff --git a/tests/zfs-tests/cmd/Makefile.am b/tests/zfs-tests/cmd/Makefile.am
+index 2b965ca7000..d1c29fcd1c6 100644
+--- a/tests/zfs-tests/cmd/Makefile.am
++++ b/tests/zfs-tests/cmd/Makefile.am
+@@ -19,6 +19,7 @@ SUBDIRS = \
+ mktree \
+ mmap_exec \
+ mmap_libaio \
++ mmap_seek \
+ mmapwrite \
+ nvlist_to_lua \
+ randwritecomp \
+diff --git a/tests/zfs-tests/cmd/mmap_seek/.gitignore b/tests/zfs-tests/cmd/mmap_seek/.gitignore
+new file mode 100644
+index 00000000000..6b05a791750
+--- /dev/null
++++ b/tests/zfs-tests/cmd/mmap_seek/.gitignore
+@@ -0,0 +1 @@
++/mmap_seek
+diff --git a/tests/zfs-tests/cmd/mmap_seek/Makefile.am b/tests/zfs-tests/cmd/mmap_seek/Makefile.am
+new file mode 100644
+index 00000000000..b938931125f
+--- /dev/null
++++ b/tests/zfs-tests/cmd/mmap_seek/Makefile.am
+@@ -0,0 +1,6 @@
++include $(top_srcdir)/config/Rules.am
++
++pkgexecdir = $(datadir)/@PACKAGE@/zfs-tests/bin
++
++pkgexec_PROGRAMS = mmap_seek
++mmap_seek_SOURCES = mmap_seek.c
+diff --git a/tests/zfs-tests/cmd/mmap_seek/mmap_seek.c b/tests/zfs-tests/cmd/mmap_seek/mmap_seek.c
+new file mode 100644
+index 00000000000..f476e1dba9a
+--- /dev/null
++++ b/tests/zfs-tests/cmd/mmap_seek/mmap_seek.c
+@@ -0,0 +1,147 @@
++/*
++ * CDDL HEADER START
++ *
++ * The contents of this file are subject to the terms of the
++ * Common Development and Distribution License (the "License").
++ * You may not use this file except in compliance with the License.
++ *
++ * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
++ * or http://www.opensolaris.org/os/licensing.
++ * See the License for the specific language governing permissions
++ * and limitations under the License.
++ *
++ * When distributing Covered Code, include this CDDL HEADER in each
++ * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
++ * If applicable, add the following below this CDDL HEADER, with the
++ * fields enclosed by brackets "[]" replaced with your own identifying
++ * information: Portions Copyright [yyyy] [name of copyright owner]
++ *
++ * CDDL HEADER END
++ */
++
++/*
++ * Copyright (c) 2021 by Lawrence Livermore National Security, LLC.
++ */
++
++#include <unistd.h>
++#include <fcntl.h>
++#include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
++#include <sys/mman.h>
++#include <errno.h>
++
++static void
++seek_data(int fd, off_t offset, off_t expected)
++{
++ off_t data_offset = lseek(fd, offset, SEEK_DATA);
++ if (data_offset != expected) {
++ fprintf(stderr, "lseek(fd, %d, SEEK_DATA) = %d (expected %d)\n",
++ (int)offset, (int)data_offset, (int)expected);
++ exit(2);
++ }
++}
++
++static void
++seek_hole(int fd, off_t offset, off_t expected)
++{
++ off_t hole_offset = lseek(fd, offset, SEEK_HOLE);
++ if (hole_offset != expected) {
++ fprintf(stderr, "lseek(fd, %d, SEEK_HOLE) = %d (expected %d)\n",
++ (int)offset, (int)hole_offset, (int)expected);
++ exit(2);
++ }
++}
++
++int
++main(int argc, char **argv)
++{
++ char *execname = argv[0];
++ char *file_path = argv[1];
++ char *buf = NULL;
++ int err;
++
++ if (argc != 4) {
++ (void) printf("usage: %s <file name> <file size> "
++ "<block size>\n", argv[0]);
++ exit(1);
++ }
++
++ int fd = open(file_path, O_RDWR | O_CREAT, 0666);
++ if (fd == -1) {
++ (void) fprintf(stderr, "%s: %s: ", execname, file_path);
++ perror("open");
++ exit(2);
++ }
++
++ off_t file_size = atoi(argv[2]);
++ off_t block_size = atoi(argv[3]);
++
++ if (block_size * 2 > file_size) {
++ (void) fprintf(stderr, "file size must be at least "
++ "double the block size\n");
++ exit(2);
++ }
++
++ err = ftruncate(fd, file_size);
++ if (err == -1) {
++ perror("ftruncate");
++ exit(2);
++ }
++
++ if ((buf = mmap(NULL, file_size, PROT_READ | PROT_WRITE,
++ MAP_SHARED, fd, 0)) == MAP_FAILED) {
++ perror("mmap");
++ exit(2);
++ }
++
++ /* Verify the file is sparse and reports no data. */
++ seek_data(fd, 0, -1);
++
++ /* Verify the file is reported as a hole. */
++ seek_hole(fd, 0, 0);
++
++ /* Verify search beyond end of file is an error. */
++ seek_data(fd, 2 * file_size, -1);
++ seek_hole(fd, 2 * file_size, -1);
++
++ /* Dirty the first byte. */
++ memset(buf, 'a', 1);
++ seek_data(fd, 0, 0);
++ seek_data(fd, block_size, -1);
++ seek_hole(fd, 0, block_size);
++ seek_hole(fd, block_size, block_size);
++
++ /* Dirty the first half of the file. */
++ memset(buf, 'b', file_size / 2);
++ seek_data(fd, 0, 0);
++ seek_data(fd, block_size, block_size);
++ seek_hole(fd, 0, P2ROUNDUP(file_size / 2, block_size));
++ seek_hole(fd, block_size, P2ROUNDUP(file_size / 2, block_size));
++
++ /* Dirty the whole file. */
++ memset(buf, 'c', file_size);
++ seek_data(fd, 0, 0);
++ seek_data(fd, file_size * 3 / 4,
++ P2ROUNDUP(file_size * 3 / 4, block_size));
++ seek_hole(fd, 0, file_size);
++ seek_hole(fd, file_size / 2, file_size);
++
++ /* Punch a hole (required compression be enabled). */
++ memset(buf + block_size, 0, block_size);
++ seek_data(fd, 0, 0);
++ seek_data(fd, block_size, 2 * block_size);
++ seek_hole(fd, 0, block_size);
++ seek_hole(fd, block_size, block_size);
++ seek_hole(fd, 2 * block_size, file_size);
++
++ err = munmap(buf, file_size);
++ if (err == -1) {
++ perror("munmap");
++ exit(2);
++ }
++
++ close(fd);
++
++ return (0);
++}
+diff --git a/tests/zfs-tests/include/commands.cfg b/tests/zfs-tests/include/commands.cfg
+index 1ec73f25bae..4497a6248b4 100644
+--- a/tests/zfs-tests/include/commands.cfg
++++ b/tests/zfs-tests/include/commands.cfg
+@@ -209,6 +209,7 @@ export ZFSTEST_FILES='badsend
+ mktree
+ mmap_exec
+ mmap_libaio
++ mmap_seek
+ mmapwrite
+ nvlist_to_lua
+ randfree_file
+diff --git a/tests/zfs-tests/include/tunables.cfg b/tests/zfs-tests/include/tunables.cfg
+index 56d430a3987..fff43e46916 100644
+--- a/tests/zfs-tests/include/tunables.cfg
++++ b/tests/zfs-tests/include/tunables.cfg
+@@ -33,6 +33,7 @@ DEADMAN_FAILMODE deadman.failmode zfs_deadman_failmode
+ DEADMAN_SYNCTIME_MS deadman.synctime_ms zfs_deadman_synctime_ms
+ DEADMAN_ZIOTIME_MS deadman.ziotime_ms zfs_deadman_ziotime_ms
+ DISABLE_IVSET_GUID_CHECK disable_ivset_guid_check zfs_disable_ivset_guid_check
++DMU_OFFSET_NEXT_SYNC dmu_offset_next_sync zfs_dmu_offset_next_sync
+ INITIALIZE_CHUNK_SIZE initialize_chunk_size zfs_initialize_chunk_size
+ INITIALIZE_VALUE initialize_value zfs_initialize_value
+ KEEP_LOG_SPACEMAPS_AT_EXPORT keep_log_spacemaps_at_export zfs_keep_log_spacemaps_at_export
+diff --git a/tests/zfs-tests/tests/functional/mmap/Makefile.am b/tests/zfs-tests/tests/functional/mmap/Makefile.am
+index 2adc398b8c0..b26791ee7ce 100644
+--- a/tests/zfs-tests/tests/functional/mmap/Makefile.am
++++ b/tests/zfs-tests/tests/functional/mmap/Makefile.am
+@@ -4,7 +4,8 @@ dist_pkgdata_SCRIPTS = \
+ cleanup.ksh \
+ mmap_read_001_pos.ksh \
+ mmap_write_001_pos.ksh \
+- mmap_libaio_001_pos.ksh
++ mmap_libaio_001_pos.ksh \
++ mmap_seek_001_pos.ksh
+
+ dist_pkgdata_DATA = \
+ mmap.cfg
+diff --git a/tests/zfs-tests/tests/functional/mmap/mmap_seek_001_pos.ksh b/tests/zfs-tests/tests/functional/mmap/mmap_seek_001_pos.ksh
+new file mode 100755
+index 00000000000..6188549ad8d
+--- /dev/null
++++ b/tests/zfs-tests/tests/functional/mmap/mmap_seek_001_pos.ksh
+@@ -0,0 +1,67 @@
++#!/bin/ksh -p
++#
++# CDDL HEADER START
++#
++# The contents of this file are subject to the terms of the
++# Common Development and Distribution License (the "License").
++# You may not use this file except in compliance with the License.
++#
++# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
++# or http://www.opensolaris.org/os/licensing.
++# See the License for the specific language governing permissions
++# and limitations under the License.
++#
++# When distributing Covered Code, include this CDDL HEADER in each
++# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
++# If applicable, add the following below this CDDL HEADER, with the
++# fields enclosed by brackets "[]" replaced with your own identifying
++# information: Portions Copyright [yyyy] [name of copyright owner]
++#
++# CDDL HEADER END
++#
++
++#
++# Copyright (c) 2021 by Lawrence Livermore National Security, LLC.
++#
++
++. $STF_SUITE/include/libtest.shlib
++. $STF_SUITE/tests/functional/mmap/mmap.cfg
++
++#
++# DESCRIPTION:
++# lseek() data/holes for an mmap()'d file.
++#
++# STRATEGY:
++# 1. Enable compression and hole reporting for dirty files.
++# 2. Call mmap_seek binary test case for various record sizes.
++#
++
++verify_runnable "global"
++
++function cleanup
++{
++ log_must zfs set compression=off $TESTPOOL/$TESTFS
++ log_must zfs set recordsize=128k $TESTPOOL/$TESTFS
++ log_must rm -f $TESTDIR/test-mmap-file
++ log_must set_tunable64 DMU_OFFSET_NEXT_SYNC $dmu_offset_next_sync
++}
++
++log_assert "lseek() data/holes for an mmap()'d file."
++
++log_onexit cleanup
++
++# Enable hole reporting for dirty files.
++typeset dmu_offset_next_sync=$(get_tunable DMU_OFFSET_NEXT_SYNC)
++log_must set_tunable64 DMU_OFFSET_NEXT_SYNC 1
++
++# Compression must be enabled to convert zero'd blocks to holes.
++# This behavior is checked by the mmap_seek test.
++log_must zfs set compression=on $TESTPOOL/$TESTFS
++
++for bs in 4096 8192 16384 32768 65536 131072; do
++ log_must zfs set recordsize=$bs $TESTPOOL/$TESTFS
++ log_must mmap_seek $TESTDIR/test-mmap-file $((1024*1024)) $bs
++ log_must rm $TESTDIR/test-mmap-file
++done
++
++log_pass "lseek() data/holes for an mmap()'d file succeeded."
diff --git a/sys-fs/zfs-kmod/files/2.1.1-restore-dirty-dnode-logic.patch b/sys-fs/zfs-kmod/files/2.1.1-restore-dirty-dnode-logic.patch
new file mode 100644
index 000000000000..d33735ff9ff6
--- /dev/null
+++ b/sys-fs/zfs-kmod/files/2.1.1-restore-dirty-dnode-logic.patch
@@ -0,0 +1,31 @@
+From d7e640cf95f72deeca501d34afed59a0bc9d7940 Mon Sep 17 00:00:00 2001
+From: Brian Behlendorf <behlendorf1@llnl.gov>
+Date: Wed, 10 Nov 2021 16:14:32 -0800
+Subject: [PATCH] Restore dirty dnode detection logic
+
+In addition to flushing memory mapped regions when checking holes,
+commit de198f2d95 modified the dirty dnode detection logic to check
+the dn->dn_dirty_records instead of the dn->dn_dirty_link. Relying
+on the dirty record has not be reliable, switch back to the previous
+method.
+
+Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
+Issue #11900
+Closes #12745
+---
+ module/zfs/dnode.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/module/zfs/dnode.c b/module/zfs/dnode.c
+index 572d88ec2bf..7044c1fc634 100644
+--- a/module/zfs/dnode.c
++++ b/module/zfs/dnode.c
+@@ -1657,7 +1657,7 @@ dnode_is_dirty(dnode_t *dn)
+ mutex_enter(&dn->dn_mtx);
+
+ for (int i = 0; i < TXG_SIZE; i++) {
+- if (list_head(&dn->dn_dirty_records[i]) != NULL) {
++ if (multilist_link_active(&dn->dn_dirty_link[i])) {
+ mutex_exit(&dn->dn_mtx);
+ return (B_TRUE);
+ }
diff --git a/sys-fs/zfs-kmod/zfs-kmod-0.8.6.ebuild b/sys-fs/zfs-kmod/zfs-kmod-0.8.6.ebuild
index e5b3df641c98..3d63f3f393bf 100644
--- a/sys-fs/zfs-kmod/zfs-kmod-0.8.6.ebuild
+++ b/sys-fs/zfs-kmod/zfs-kmod-0.8.6.ebuild
@@ -16,6 +16,10 @@ else
KEYWORDS="amd64 arm64 ppc64"
S="${WORKDIR}/zfs-${PV}"
ZFS_KERNEL_COMPAT="5.9"
+
+ # increments minor eg 5.14 -> 5.15, and still supports override.
+ ZFS_KERNEL_DEP="${ZFS_KERNEL_COMPAT_OVERRIDE:-${ZFS_KERNEL_COMPAT}}"
+ ZFS_KERNEL_DEP="${ZFS_KERNEL_DEP%%.*}.$(( ${ZFS_KERNEL_DEP##*.} + 1))"
fi
LICENSE="CDDL debug? ( GPL-2+ )"
@@ -31,6 +35,7 @@ RDEPEND="${DEPEND}
BDEPEND="
dev-lang/perl
virtual/awk
+ dist-kernel? ( <virtual/dist-kernel-${ZFS_KERNEL_DEP}:= )
"
# PDEPEND in this form is needed to trick portage suggest
diff --git a/sys-fs/zfs-kmod/zfs-kmod-2.0.6.ebuild b/sys-fs/zfs-kmod/zfs-kmod-2.0.6.ebuild
index 5c445cce099f..d12b2a434901 100644
--- a/sys-fs/zfs-kmod/zfs-kmod-2.0.6.ebuild
+++ b/sys-fs/zfs-kmod/zfs-kmod-2.0.6.ebuild
@@ -21,6 +21,10 @@ else
S="${WORKDIR}/zfs-${PV%_rc?}"
ZFS_KERNEL_COMPAT="5.14"
+ # increments minor eg 5.14 -> 5.15, and still supports override.
+ ZFS_KERNEL_DEP="${ZFS_KERNEL_COMPAT_OVERRIDE:-${ZFS_KERNEL_COMPAT}}"
+ ZFS_KERNEL_DEP="${ZFS_KERNEL_DEP%%.*}.$(( ${ZFS_KERNEL_DEP##*.} + 1))"
+
if [[ ${PV} != *_rc* ]]; then
KEYWORDS="amd64 arm64 ppc64"
fi
@@ -39,8 +43,15 @@ BDEPEND="
virtual/awk
"
+# we want dist-kernel block in BDEPEND because of portage resolver.
+# since linux-mod.eclass already sets version-unbounded dep, portage
+# will pull new versions. So we set it in BDEPEND which takes priority.
+# and we don't need in in git ebuild.
if [[ ${PV} != "9999" ]] ; then
- BDEPEND+=" verify-sig? ( app-crypt/openpgp-keys-openzfs )"
+ BDEPEND+="
+ verify-sig? ( app-crypt/openpgp-keys-openzfs )
+ dist-kernel? ( <virtual/dist-kernel-${ZFS_KERNEL_DEP}:= )
+ "
fi
# PDEPEND in this form is needed to trick portage suggest
diff --git a/sys-fs/zfs-kmod/zfs-kmod-2.1.1.ebuild b/sys-fs/zfs-kmod/zfs-kmod-2.1.1-r3.ebuild
index 996dd40ebdcb..ea61ad1dc0a9 100644
--- a/sys-fs/zfs-kmod/zfs-kmod-2.1.1.ebuild
+++ b/sys-fs/zfs-kmod/zfs-kmod-2.1.1-r3.ebuild
@@ -21,6 +21,10 @@ else
S="${WORKDIR}/zfs-${PV%_rc?}"
ZFS_KERNEL_COMPAT="5.14"
+ # increments minor eg 5.14 -> 5.15, and still supports override.
+ ZFS_KERNEL_DEP="${ZFS_KERNEL_COMPAT_OVERRIDE:-${ZFS_KERNEL_COMPAT}}"
+ ZFS_KERNEL_DEP="${ZFS_KERNEL_DEP%%.*}.$(( ${ZFS_KERNEL_DEP##*.} + 1))"
+
if [[ ${PV} != *_rc* ]]; then
KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv"
fi
@@ -39,8 +43,15 @@ BDEPEND="
virtual/awk
"
+# we want dist-kernel block in BDEPEND because of portage resolver.
+# since linux-mod.eclass already sets version-unbounded dep, portage
+# will pull new versions. So we set it in BDEPEND which takes priority.
+# and we don't need in in git ebuild.
if [[ ${PV} != "9999" ]] ; then
- BDEPEND+=" verify-sig? ( app-crypt/openpgp-keys-openzfs )"
+ BDEPEND+="
+ verify-sig? ( app-crypt/openpgp-keys-openzfs )
+ dist-kernel? ( <virtual/dist-kernel-${ZFS_KERNEL_DEP}:= )
+ "
fi
# PDEPEND in this form is needed to trick portage suggest
@@ -51,6 +62,11 @@ RESTRICT="debug? ( strip ) test"
DOCS=( AUTHORS COPYRIGHT META README.md )
+PATCHES=(
+ "${FILESDIR}/2.1.1-SEEK_DATA-SEEK_HOLE.patch"
+ "${FILESDIR}/2.1.1-restore-dirty-dnode-logic.patch"
+)
+
pkg_pretend() {
use rootfs || return 0
@@ -191,4 +207,10 @@ pkg_postinst() {
ewarn
ewarn "Refer to /etc/zfs/compatibility.d/grub2 for list of features."
fi
+
+ echo
+ ewarn "This versions of ${PN} includes a very important fix for upstream bug"
+ ewarn "https://github.com/openzfs/zfs/issues/11900"
+ ewarn "Please reboot into kernel with ${P} as soon as possible"
+ echo
}
diff --git a/sys-fs/zfs-kmod/zfs-kmod-9999.ebuild b/sys-fs/zfs-kmod/zfs-kmod-9999.ebuild
index 255ef48a0b4b..5b11d92a6ea3 100644
--- a/sys-fs/zfs-kmod/zfs-kmod-9999.ebuild
+++ b/sys-fs/zfs-kmod/zfs-kmod-9999.ebuild
@@ -21,6 +21,10 @@ else
S="${WORKDIR}/zfs-${PV%_rc?}"
ZFS_KERNEL_COMPAT="5.14"
+ # increments minor eg 5.14 -> 5.15, and still supports override.
+ ZFS_KERNEL_DEP="${ZFS_KERNEL_COMPAT_OVERRIDE:-${ZFS_KERNEL_COMPAT}}"
+ ZFS_KERNEL_DEP="${ZFS_KERNEL_DEP%%.*}.$(( ${ZFS_KERNEL_DEP##*.} + 1))"
+
if [[ ${PV} != *_rc* ]]; then
KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv"
fi
@@ -39,8 +43,15 @@ BDEPEND="
virtual/awk
"
+# we want dist-kernel block in BDEPEND because of portage resolver.
+# since linux-mod.eclass already sets version-unbounded dep, portage
+# will pull new versions. So we set it in BDEPEND which takes priority.
+# and we don't need in in git ebuild.
if [[ ${PV} != "9999" ]] ; then
- BDEPEND+=" verify-sig? ( app-crypt/openpgp-keys-openzfs )"
+ BDEPEND+="
+ verify-sig? ( app-crypt/openpgp-keys-openzfs )
+ dist-kernel? ( <virtual/dist-kernel-${ZFS_KERNEL_DEP}:= )
+ "
fi
# PDEPEND in this form is needed to trick portage suggest
diff --git a/sys-fs/zfs/Manifest b/sys-fs/zfs/Manifest
index c91e5b826deb..fd5db0e00da8 100644
--- a/sys-fs/zfs/Manifest
+++ b/sys-fs/zfs/Manifest
@@ -5,8 +5,8 @@ DIST zfs-2.0.6.tar.gz 13192941 BLAKE2B 3a83303b016ec4259c286af8a9ceb281829d26508
DIST zfs-2.0.6.tar.gz.asc 836 BLAKE2B 065eba3361ef4234acc67df0236ab9a6737ba9fe5a706be98b55dd64d10360160ca787d8873f27451a2107225ae657dc4cab20a7c2a268cd2de64c8d82d0327a SHA512 123569ecfcee22ac462160acf61b120144c774bc5c0d46a50d2b7312f7565da1a9d780e1a6207dba5834917c66d5b852763e4a3162378d5c9bb90b0dfde35c5c
DIST zfs-2.1.1.tar.gz 34836374 BLAKE2B 09ee6bd30e8266342bd975454086049c3fd9142e7dacfe52166575c20e3c92688f9b457d75b2a2068fc281e65f78e1d47450545504cdf8bc31e23663545d7800 SHA512 b69ce764a9f7438ec2c90f86be02abfd684c67cd38de876374e3e6f4b2f82a75d86fa70205def2ba454ad27e52ec8d955ebc4ba456e91d397129a54ea849c19c
DIST zfs-2.1.1.tar.gz.asc 195 BLAKE2B d886e7dc74270228f98dfc5ca85bbbe897d5a87a5ae8bbfde28e2af1b36218227bc9f1b5902e97beebe160a298857d6e4673829d87cd8039332dc1858cfcffc0 SHA512 d76956b5c1bd547a319e70dd33d50beae39f65fca54532731426d2ef209385a556c51b3936051f75bc3800623c42da5b8d279c51f501a896f5fdfb7b4ed7fb94
-EBUILD zfs-0.8.6-r1.ebuild 6315 BLAKE2B 063ec7b7374c26035f05614ce2cab7e9d73993571edd22fbaa6eeff51b26ebdeba98fe7fae398f4201a12774a672fe444c1f0f56cfae8da7acd1ec35d92cd5c4 SHA512 5ee8f85b288eca30d3540b1fa8de11616f9095385190139478aa59942e0df7e5f089522e145c35ce900c288b1a4f1d13dda66c569a206da73050630b2f3e787b
-EBUILD zfs-2.0.6-r1.ebuild 8150 BLAKE2B 97f5d5db28d6202b7585be544b7fc4f70d19c04b85356525cea2a12a14840f4f5b09119fc51fd5ff7f7b83eee042fedab89f24ca0cc204b2f8e35be21cde38c5 SHA512 2eb2544cdfbfcd24fd9da53afa15c24afcd12eea817df3553022161f250f1d65ed0bac4600d0dc3c34c152df4577248aae3bc56d0a3b8193da9c83f6d2f5ef96
-EBUILD zfs-2.1.1-r2.ebuild 8328 BLAKE2B 4ced1d769042006a93d2a77fdcb89097179cee184704a2eb7ca6a0a1e651c598d17781ac2974221e68dc9bf10107be2a5e0c569f0e0c8efa9c84697f99538b59 SHA512 bcbf86059b5f49f52d408e26cc7fc49eb888b07114b3e0d9675931a5c88d70f4fa8e4daef0bbc87912ee4cb2e84aa507d402bb96163e7ff47f08e2789d929572
-EBUILD zfs-9999.ebuild 8369 BLAKE2B af151107e258c8d391616a9860b12f4394b81e0ef05eea989ee23d9f649f78c126a73a8067873145574c2e3798044363ca5ba5f79fcdec9a4dead46df63103ae SHA512 515a0f26d5c12caeedaf6f8b4c3a1b7c3c735e045980b2c600857ed9412e3b167cf1c02d921efad68c4ee97063a9db71dfff78ce7639357644e70db7d90cbe56
+EBUILD zfs-0.8.6-r1.ebuild 6507 BLAKE2B f43f8cb39ab74e8ab1abef2e42a9c859eeefb27a0c0f301235bcac75d4a865d94d98d9c05762ab18a04e9e981c626734e6d9ee01224c5af711179e06b385bf0a SHA512 12733f40599722d4ff1390f6044b9bbe3e4a4596b84ce922b59c785ff440d5951e2fa7505cd9e5f4b9193b40d88d8e30f99e1c8b83678cff36c796f2014ca42c
+EBUILD zfs-2.0.6-r1.ebuild 8342 BLAKE2B 837fb68deaecc8923cbf780bd0600cdbc0207fa765ba00084041886cde246fa0b680c824d19f5e7705da52acbec8ae34ea5f0e9318aa274c61720c671cd01f32 SHA512 10dfd698fd0fd149ab8a1ecfb468240f9a797e8c0536a242da4a948a0de3045c4608a40f685013d78a35f2c1a5fc675b2da48a0f329ecaff74b537ee35943d4c
+EBUILD zfs-2.1.1-r5.ebuild 8521 BLAKE2B 1ba53dcecbd12d37e83466fe87b96414e273522c459a89ce021288347cdd6bd33c82cc56c9d96777097c2238657c2e624487c2e0d8427b7be52a992cf33b294e SHA512 ca4c86fb5d4ac37ebb5ba5f5b827abae90d5140df3c3f2abb146c37c9d9d85defb9006ad25c762023fa7d2d02798c8e05a0af1bf31265e99c4d2cfe0a2037b91
+EBUILD zfs-9999.ebuild 8446 BLAKE2B f5803888ba025451f15285f1f27ee55a9945e40a09b5a5caffed47ca0fe648df46f5f9a393253f465db9878a310949f4b2b7cf4f014b119175ec9d55e324b04f SHA512 bca04d73af011baa972df8085eda617d9baeddea86f29f0b1b74f1b9dc166476070ef0aae2863daeeba49ad7f3d9a959f5a2680bc69232e26cf4ad0bb813305b
MISC metadata.xml 1001 BLAKE2B 8e94a0d8e1afff064b3f8e4a7e3e6d34ad12d5fa550df2f3371b1593b0938b3ea0dbfdcd2e40023f4e91bbe12cf1f3633d92977e4f5b4ee10b56d5040f065f90 SHA512 fc7ba310676715f5daa59b30107560f9ba61cc7dc79eb74ff866e4c8f36bd6a414474a216f5c833dc46c6426e4c80a6672b488fab4178a0c00a47b0de1caf6eb
diff --git a/sys-fs/zfs/zfs-0.8.6-r1.ebuild b/sys-fs/zfs/zfs-0.8.6-r1.ebuild
index ac6c6017eaaf..b21a59267cb9 100644
--- a/sys-fs/zfs/zfs-0.8.6-r1.ebuild
+++ b/sys-fs/zfs/zfs-0.8.6-r1.ebuild
@@ -46,7 +46,7 @@ BDEPEND="virtual/awk
"
RDEPEND="${DEPEND}
- !kernel-builtin? ( ~sys-fs/zfs-kmod-${PV}:=[dist-kernel?] )
+ !kernel-builtin? ( ~sys-fs/zfs-kmod-${PV}:= )
!prefix? ( virtual/udev )
sys-fs/udev-init-scripts
virtual/awk
@@ -67,6 +67,10 @@ RDEPEND="${DEPEND}
)
"
+# PDEPEND in this form is needed to trick portage suggest
+# enabling dist-kernel if only 1 package have it set, without suggesting to disable
+PDEPEND="dist-kernel? ( ~sys-fs/zfs-kmod-${PV}[dist-kernel] )"
+
REQUIRED_USE="
!minimal? ( ${PYTHON_REQUIRED_USE} )
python? ( !minimal )
diff --git a/sys-fs/zfs/zfs-2.0.6-r1.ebuild b/sys-fs/zfs/zfs-2.0.6-r1.ebuild
index e12aebe76f0a..c955a9a96516 100644
--- a/sys-fs/zfs/zfs-2.0.6-r1.ebuild
+++ b/sys-fs/zfs/zfs-2.0.6-r1.ebuild
@@ -63,7 +63,7 @@ fi
# awk is used for some scripts, completions, and the Dracut module
RDEPEND="${DEPEND}
- !kernel-builtin? ( ~sys-fs/zfs-kmod-${PV}:=[dist-kernel?] )
+ !kernel-builtin? ( ~sys-fs/zfs-kmod-${PV}:= )
!prefix? ( virtual/udev )
sys-fs/udev-init-scripts
virtual/awk
@@ -84,6 +84,10 @@ RDEPEND="${DEPEND}
)
"
+# PDEPEND in this form is needed to trick portage suggest
+# enabling dist-kernel if only 1 package have it set, without suggesting to disable
+PDEPEND="dist-kernel? ( ~sys-fs/zfs-kmod-${PV}[dist-kernel] )"
+
# temporary block new coreutils
# https://github.com/openzfs/zfs/issues/11900
RDEPEND+="
diff --git a/sys-fs/zfs/zfs-2.1.1-r2.ebuild b/sys-fs/zfs/zfs-2.1.1-r5.ebuild
index 36d16c857de2..2f2920a75e08 100644
--- a/sys-fs/zfs/zfs-2.1.1-r2.ebuild
+++ b/sys-fs/zfs/zfs-2.1.1-r5.ebuild
@@ -63,7 +63,7 @@ fi
# awk is used for some scripts, completions, and the Dracut module
RDEPEND="${DEPEND}
- !kernel-builtin? ( ~sys-fs/zfs-kmod-${PV}:=[dist-kernel?] )
+ !kernel-builtin? ( ~sys-fs/zfs-kmod-${PV}:= )
!prefix? ( virtual/udev )
sys-fs/udev-init-scripts
virtual/awk
@@ -84,6 +84,10 @@ RDEPEND="${DEPEND}
)
"
+# PDEPEND in this form is needed to trick portage suggest
+# enabling dist-kernel if only 1 package have it set, without suggesting to disable
+PDEPEND="dist-kernel? ( ~sys-fs/zfs-kmod-${PV}[dist-kernel] )"
+
# temporary block new coreutils
# https://github.com/openzfs/zfs/issues/11900
RDEPEND+="
@@ -98,7 +102,9 @@ REQUIRED_USE="
RESTRICT="test"
-PATCHES=( "${FILESDIR}/2.0.4-scrub-timers.patch" )
+PATCHES=(
+ "${FILESDIR}/2.0.4-scrub-timers.patch"
+)
pkg_pretend() {
use rootfs || return 0
diff --git a/sys-fs/zfs/zfs-9999.ebuild b/sys-fs/zfs/zfs-9999.ebuild
index 6cf9307c40d0..2349a5a20d00 100644
--- a/sys-fs/zfs/zfs-9999.ebuild
+++ b/sys-fs/zfs/zfs-9999.ebuild
@@ -67,7 +67,7 @@ fi
# awk is used for some scripts, completions, and the Dracut module
RDEPEND="${DEPEND}
- !kernel-builtin? ( ~sys-fs/zfs-kmod-${PV}:=[dist-kernel?] )
+ !kernel-builtin? ( ~sys-fs/zfs-kmod-${PV}:= )
!prefix? ( virtual/udev )
sys-fs/udev-init-scripts
virtual/awk
@@ -88,11 +88,9 @@ RDEPEND="${DEPEND}
)
"
-# temporary block new coreutils
-# https://github.com/openzfs/zfs/issues/11900
-RDEPEND+="
- <sys-apps/coreutils-9
-"
+# PDEPEND in this form is needed to trick portage suggest
+# enabling dist-kernel if only 1 package have it set, without suggesting to disable
+PDEPEND="dist-kernel? ( ~sys-fs/zfs-kmod-${PV}[dist-kernel] )"
REQUIRED_USE="
!minimal? ( ${PYTHON_REQUIRED_USE} )