diff options
author | V3n3RiX <venerix@koprulu.sector> | 2023-07-04 04:07:19 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2023-07-04 04:07:19 +0100 |
commit | 2475ac51234b6ca2597db80dd05deb29667888b0 (patch) | |
tree | c3b38e5475d765253892cebd14aa2eb4822ef00f /sys-fs/zfs-kmod | |
parent | 2764a2c09ef0bc530bda7afb20e505ca24d310c6 (diff) |
gentoo auto-resync : 04:07:2023 - 04:07:19
Diffstat (limited to 'sys-fs/zfs-kmod')
-rw-r--r-- | sys-fs/zfs-kmod/Manifest | 13 | ||||
-rw-r--r-- | sys-fs/zfs-kmod/files/2.1.10-Revert-ZFS_IOC_COUNT_FILLED-does-unnecessary-txg_wai.patch | 67 | ||||
-rw-r--r-- | sys-fs/zfs-kmod/files/2.1.7-ppc64-ieee128-compat.patch | 217 | ||||
-rw-r--r-- | sys-fs/zfs-kmod/zfs-kmod-2.1.7.ebuild | 219 | ||||
-rw-r--r-- | sys-fs/zfs-kmod/zfs-kmod-2.2.0_rc1.ebuild (renamed from sys-fs/zfs-kmod/zfs-kmod-2.1.10-r1.ebuild) | 180 | ||||
-rw-r--r-- | sys-fs/zfs-kmod/zfs-kmod-9999.ebuild | 8 |
6 files changed, 98 insertions, 606 deletions
diff --git a/sys-fs/zfs-kmod/Manifest b/sys-fs/zfs-kmod/Manifest index 34de9a049d55..ca797f6464b4 100644 --- a/sys-fs/zfs-kmod/Manifest +++ b/sys-fs/zfs-kmod/Manifest @@ -1,22 +1,17 @@ -AUX 2.1.10-Revert-ZFS_IOC_COUNT_FILLED-does-unnecessary-txg_wai.patch 1932 BLAKE2B 761f1ed4a17c946fb08aa46c3b9defb0672897311dc61225f28298af7569f6350b264cb917696c091ebbf2a95aec8e2005385d27d3f996b99cc424ae0b503082 SHA512 ebdb7c6562eba403397b17dc0830f5c10a80b339ff62f52b569b4ddc28660e8ba353f2e54927e546812fe17539249ba6d1757d5cc150d3a2a75f41e702bcd239 -AUX 2.1.7-ppc64-ieee128-compat.patch 6889 BLAKE2B 9214915ed5b1d149927d46f749903fbb9b4d243d993041b8c6db039dcb7a3968a315f211e010ef9373b721336d45daef264d951e7ea1e0aed01818ebccae9d02 SHA512 4e3edbe396d0c1fdb7b286417b2bf7fe114b392e09158b3f5d3e3d1c4844bf0d59263309883363175dacd63194fd0d6a120ace35c83989d0546dae825bbb91bd AUX zfs-kmod-2.1.11-gentoo.patch 1076 BLAKE2B d2b0fe2ff1ac31c2a2a184141f107010dae61d2de465462b8177db1a07918be2bd2fc4d4570ad8758da87ef14cf3878db062fe9eb5b53fa3156e7db5c06073d4 SHA512 9e103aae75036e52f89e79c4d4ed3cffe670ef423cda7c2f936533b9329e994c7a02d241289f6565e9d086e5b0bdd6865ab3677c3ad84eaadf3abe310977b6a8 AUX zfs-kmod-2.1.6-fgrep.patch 2183 BLAKE2B b8c9b58cc6d94e9ddeacbe3c5eca9d040f1c6fba84b814c8c553d5c1e15334765d3190286a4ad2298762bc54f66a8b89ef69d115cfbd5a25d928170a1d46a770 SHA512 f65e7ffa8cfd00da7ad6d1fcbf5d61172c52e55ea2630f719b49750692c1c046e8baed0e04cadc841adbd804cf861ec712b0d07dbbcae7c1c3b475326045ae8c -DIST zfs-2.1.10.tar.gz 35101856 BLAKE2B 5b1a17d192097f5eab1ef3192217fa34b276b6f344a5114a5411be43208616ac682ae2129ae9da15b4ba6207171ae82140f823041a8067441459d51d994df271 SHA512 3189c6f822c7b6caba650a43f321114ef0bd42b72f566c44ba2400005c61cc3d420149a72520aed5b94494c51c35629a6f645273941774d964f2b61c31c366b2 -DIST zfs-2.1.10.tar.gz.asc 836 BLAKE2B 5a6b408932cb4f39f5a226598527115aa4fa6c105c8b8ad9f236a5909a948150db712bb1f35e4e16a2b7fc7e434530f93c6a6cd2aab40d628b1ded9891694578 SHA512 a45bcce13e7261f90feda51a131fa0c86e2d3c2711286a462072fb120ccbc85719c2bbecb441147a057accffb841ca82df0ba65e1abc0ece9dea8a97cfa31af5 DIST zfs-2.1.11.tar.gz 35100716 BLAKE2B 991ac2347bcd452812e247358e2c44a04a88e700d25878b5b95f86939e6114e1205e7afabfd2a1ea9220947876511374d7224aa587d3d66184838d705f71a89a SHA512 335a543644d2dbba919213a28cc5922bf6a118fc19069db84562ce056449a2d6ca4ba827e54f304ab7d9be22260aa9b255134f1b12e2bc98890f757f35e48bd7 DIST zfs-2.1.11.tar.gz.asc 836 BLAKE2B 0b904d8e1de2dd08a377efc94e32862192d6b9ccb8628af058a71b3ea51f5e483e0cf527906cd222fe9b41b28ca0b30b0efa07d97c480e5546f6e2bed8cbcb01 SHA512 7329e62012ba64288345d8959611de82502ef1da4020e215462fbb2ed209413ec8638d211a31dd6e70be71c998f1da1d8a0d19e5df1f2778782ebb988c94aa41 DIST zfs-2.1.12.tar.gz 35155013 BLAKE2B 652780e6bf7b63f45909110726d53795fada034f6044c8393fa3980e30217ada6931e3c2bb57210719e3c78c16f973f69287b7e2b475601f4ce12d701d9d96ae SHA512 f48493a21883e441cda705fb085353bed033f1620a1d0f93069c345c76cf2c0759a2e6f7a80c47c9398e9878abfe1d90d931fe5ceaf2588770a71491a434631e DIST zfs-2.1.12.tar.gz.asc 836 BLAKE2B 9215e732981a82254115cd17ec3c9810d4e9e5d5f7bb848778848f911478fc2e4bdbfc563e9835a2e876c26d9e0e8755724a0995baf9ad24e9265123e10cfddf SHA512 69c8b618947fd966eba0bba1c7326ddd463861f051a6cf1d06e23bd6d840fe7503f02adec2c3cbb203fa7b1cced51500f3689c224b653d13d227edd51b5a44f6 -DIST zfs-2.1.7.tar.gz 35092436 BLAKE2B 9c85c3eb72f3bb39bc4fd44aaa80338ca197a4e8183436fee73cd56705abfdaecfaf1b6fbe8dd508ccce707c8259c7ab6e1733b60b17757f0a7ff92d4e52bbad SHA512 6a31eb8fbee90ad1abcfedb9000991761aff7591b11362eb5ec6e0bb4b785a7004a251439409d7bd3f51fc995c859614da6313655337952f70bae07ac8ee0140 -DIST zfs-2.1.7.tar.gz.asc 836 BLAKE2B 648fb818860a1cecc2ec42f23102e0466c038bfe48f5feca1ab58afb9cb439a0fe51cb89941f63a05c14d3b6f95c64dd3910c9a06b9cac14c467b963c65c2948 SHA512 4d4fef707bdfc37a82eb79aa0a21c71e30779bcf2ac54fe2df45a03e3302e2a45cb9f4e4ff0122b892b1e608a9f09e86d1334e0c7d9bf681780505f6e1439f9f DIST zfs-2.1.9.tar.gz 35106538 BLAKE2B d7553cc162687531b254089e29e2e15e2eb6b362cecd8e70c24bbb5dbffbde82036ad2d416f4caeceaa324bee8a2e59d9e3cd8a3bf55a2e3c0718c7af9562812 SHA512 a3c410abe911be7d3d66af8ad7023a810eb4ae3284001e544c3a34275eb17a4916a7c094936a2628a590007c007eea84673efa9f3201fd9f24c499fd5ed3ed75 DIST zfs-2.1.9.tar.gz.asc 836 BLAKE2B 1e76525eab338398dd6ff7539ea4e7d18847d0f40e9093d813ec93fce5fa4c16e09f91c0805ba01a29190f673d131f85442c13035166d6f2d007a7e42dc15486 SHA512 35e1213fcac0458e1243355beba021dfefef455df2b341fbc4b10047f9ed4747df84e319d10ffe4bbcd572fbf014019e0dec200eb4e7d3c116fb805369182cb0 -EBUILD zfs-kmod-2.1.10-r1.ebuild 5576 BLAKE2B 815dd6a12488b0a17e67edc6b77709dc67c8c4eaa12b636fc878df712ce39c3abf5b80960d56cfa314ed9257a3b810b5c067305febd6af451dd6346246ce2f13 SHA512 d77feb3c9ac5698c8d1db64ff22dcd96bff54144e674ad1ef254fa5d1c047c5e0f29b165c037ece23dee9abe89f4ce0e93d1e71267841c69d209ab9dc1a7e65e +DIST zfs-2.2.0-rc1.tar.gz 33656024 BLAKE2B 1157db51d2736905b787a2627e599d7ac527be281edc9a76da0f746ae39483df3b4b8b31e5af504b9b06cd99a3776cd16670a8774d0e68f50014b09971209437 SHA512 22285ea1b34d4dbed311e3855449cad51c6f6ddb29c906f106fa6f4816d8e478f073b29fbc4d9636bf783558e041b20d2f2c5c0c33f65153d3b21da6cd9b7689 +DIST zfs-2.2.0-rc1.tar.gz.asc 195 BLAKE2B 8df7d05729716ca75e8c975df92f8a1976b7712a3c98e3479582550e60bd97af77f80e9b72be094b57650948136ad8a9276e7d4ea0a1d0473a5d56988058bcc8 SHA512 de6ee565f864080dfcf69ecdf832cebdabaa29d9f3dac1ad5f5928e664352aa3da4ed0ba5f2e634e3629f10eedbae9d1613ac3d3a13285fef846f7beabfa2f79 EBUILD zfs-kmod-2.1.11-r1.ebuild 4614 BLAKE2B d2a8f17417fd8e15890b8f1e46bed0414614ddd76732e02a60ea3ee79e29b5cd07a595f0de93d5c13e76636a305588f65f37fa96c88f6084b4f7d1d7b4d167b2 SHA512 fc95430527ea7a30e046441ebe21aac1ce78303f08ec313f8839e95571ff2fcaead3d01b454cc82179e5c2e265bd09d756133c1c5d721cdafee7a31f3223c83e EBUILD zfs-kmod-2.1.11.ebuild 5434 BLAKE2B f417c108ad15c32d0a9a7c0a3ce13c094cdb68b5042a2a9c90a237db8c4cffe4658844989efa0b6ec2dafa68d0d5bd12fd1fc6c22a89b78fb175cd6b40761730 SHA512 565937235122e96ed251bb2b555ba6c756c3fc860cb61ba8139fd2d763d8a29f87410bb00e804318f224fb7f28e5bade1bef4c4cb741ca435f9e1a3f72b11b2a EBUILD zfs-kmod-2.1.12.ebuild 4614 BLAKE2B 88f46cf2da3bdaea09e613002b4c9c89b19a1c80f278d53a9c3ca871e2d95d184d8126272e294442942316c4bf1ce39d873e66dd1ef8b21f81a741af4e72902f SHA512 1763f761d8e729c321f3e32c8b1c9ebbc5189b4b2b034a356366ceb2a1ed873b3e05a7b77736309ae84870c344eb8bd228bdbf76523bf312c552254083ed8848 -EBUILD zfs-kmod-2.1.7.ebuild 5580 BLAKE2B 5e4ef24ec54cf5dda899cf9151de0df0a2ef981a9f6a465ab381392dfe8a9214aecc29da61e83c8b317eb568abaa1abff6231660e1c608f709c88d6610da5264 SHA512 253c5cda1e71b51bd2938151ae62872e780a3e2ff3129ef14d39176697f23693c4692da167a3cfa9b386d8521bed63e5345ea8adb60b480d3bac44b198f7a477 EBUILD zfs-kmod-2.1.9.ebuild 5432 BLAKE2B 1f3473798cb522c80b1d9d244aad191c0118ebaafc8d2041cfad82513b16d68221467473efed4a7b084a44cd0a19331089510ddc402fa064cb15bf21914766ff SHA512 ed69ee9fcfb0ab1db51c1e3ee2a0a155a3eccdd1d297f83dffc3376ef20558e0421e441db0b00302cc2dd499e1693e4b63bbb95102da800e42635f00be2e7f54 -EBUILD zfs-kmod-9999.ebuild 5944 BLAKE2B a107234585e66c308e467490a31b1505dada4c12cb0d8f891949d9b123fbad9fc1de35da3aa0f211e998af5c57d688888abfcdccf2cbdb65368b45609971b9ed SHA512 143123c0daaca21087f55c652f8c1816fddc905bf4135f17dbfdd610fa85d9a3b2d0a3f8142502bfd20c94b53220c26b106ed43aed23b846a76a0e4212068d22 +EBUILD zfs-kmod-2.2.0_rc1.ebuild 5942 BLAKE2B d158e0726e1ebe12b1d40e91603a776dd8f6348cf96cb1273746f07fc641d3cb899f8ae0105ee358cf26b102bf914bd543097a245a81997e2b6be7904ce4b991 SHA512 f57a370b9348d62386a713b486be50b26cc3af7ce18f2e0423c12d78aaad28866133b1d8ea370d2807510d9ee79091464adbd9a1ed354341fabf927b0e2ccd81 +EBUILD zfs-kmod-9999.ebuild 5942 BLAKE2B d158e0726e1ebe12b1d40e91603a776dd8f6348cf96cb1273746f07fc641d3cb899f8ae0105ee358cf26b102bf914bd543097a245a81997e2b6be7904ce4b991 SHA512 f57a370b9348d62386a713b486be50b26cc3af7ce18f2e0423c12d78aaad28866133b1d8ea370d2807510d9ee79091464adbd9a1ed354341fabf927b0e2ccd81 MISC metadata.xml 776 BLAKE2B 4c48182f7ceee679b4d947a70cb232980969b59bdc425463a929b6ae8be5f79450a3869bf3cc4d00069b65cda8a06f42eba29a7974c5e1b34a2998992901bcbe SHA512 f3f0af7dcdd26a01fc1b00af46ff64e7e6d7bb83a2225ea4cbff5c1a56651ddfdf3e7f59af914833f52828b9d059c6a8cb7f32037319abed129c40987349745f diff --git a/sys-fs/zfs-kmod/files/2.1.10-Revert-ZFS_IOC_COUNT_FILLED-does-unnecessary-txg_wai.patch b/sys-fs/zfs-kmod/files/2.1.10-Revert-ZFS_IOC_COUNT_FILLED-does-unnecessary-txg_wai.patch deleted file mode 100644 index 150d1b5145d9..000000000000 --- a/sys-fs/zfs-kmod/files/2.1.10-Revert-ZFS_IOC_COUNT_FILLED-does-unnecessary-txg_wai.patch +++ /dev/null @@ -1,67 +0,0 @@ -From ac6b8f40981cb9328c22a3485e1a4b060ea89b1e Mon Sep 17 00:00:00 2001 -From: Sam James <sam@gentoo.org> -Date: Sun, 16 Apr 2023 04:49:04 +0100 -Subject: [PATCH] Revert "ZFS_IOC_COUNT_FILLED does unnecessary - txg_wait_synced()" - -This reverts commit 4b3133e671b958fa2c915a4faf57812820124a7b. - -See #14753 - possible corruption again, very similar symptoms to the -nightmare that was #11900 and same area of code. - -We can safely revert it as it's an optimisation rather than a bugfix -in itself. - -Bug: https://github.com/openzfs/zfs/issues/14753 -Bug: https://github.com/openzfs/zfs/issues/11900 -Signed-off-by: Sam James <sam@gentoo.org> ---- a/module/zfs/dnode.c -+++ b/module/zfs/dnode.c -@@ -1773,29 +1773,20 @@ dnode_try_claim(objset_t *os, uint64_t object, int slots) - } - - /* -- * Checks if the dnode might contain any uncommitted changes to data blocks. -- * Dirty metadata (e.g. bonus buffer) does not count. -+ * 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++) { -- list_t *list = &dn->dn_dirty_records[i]; -- for (dbuf_dirty_record_t *dr = list_head(list); -- dr != NULL; dr = list_next(list, dr)) { -- if (dr->dr_dbuf == NULL || -- (dr->dr_dbuf->db_blkid != DMU_BONUS_BLKID && -- dr->dr_dbuf->db_blkid != DMU_SPILL_BLKID)) { -- mutex_exit(&dn->dn_mtx); -- return (B_TRUE); -- } -- } -- if (dn->dn_free_ranges[i] != NULL) { -+ if (multilist_link_active(&dn->dn_dirty_link[i])) { - mutex_exit(&dn->dn_mtx); - return (B_TRUE); - } - } -+ - mutex_exit(&dn->dn_mtx); - - return (B_FALSE); -@@ -2667,9 +2658,7 @@ dnode_next_offset(dnode_t *dn, int flags, uint64_t *offset, - rw_enter(&dn->dn_struct_rwlock, RW_READER); - - if (dn->dn_phys->dn_nlevels == 0) { -- if (!(flags & DNODE_FIND_HOLE)) { -- error = SET_ERROR(ESRCH); -- } -+ error = SET_ERROR(ESRCH); - goto out; - } - --- -2.40.0 - diff --git a/sys-fs/zfs-kmod/files/2.1.7-ppc64-ieee128-compat.patch b/sys-fs/zfs-kmod/files/2.1.7-ppc64-ieee128-compat.patch deleted file mode 100644 index 5613cb8ca9d1..000000000000 --- a/sys-fs/zfs-kmod/files/2.1.7-ppc64-ieee128-compat.patch +++ /dev/null @@ -1,217 +0,0 @@ -From 8324d738fdb3096bd97336476bb399e6c312289a Mon Sep 17 00:00:00 2001 -From: Richard Yao <richard.yao@alumni.stonybrook.edu> -Date: Thu, 12 Jan 2023 11:06:57 -0500 -Subject: [PATCH] Linux ppc64le ieee128 compat: Do not redefine __asm on - external headers - -There is an external assembly declaration extension in GNU C that glibc -uses when building with ieee128 floating point support on ppc64le. -Marking that as volatile makes no sense, so the build breaks. - -It does not make sense to only mark this as volatile on Linux, since if -do not want the compiler reordering things on Linux, we do not want the -compiler reordering things on any other platform, so we stop treating -Linux specially and just manually inline the CPP macro so that we can -eliminate it. This should fix the build on ppc64le. - -Closes openzfs/zfs#14308 -Signed-off-by: Richard Yao <richard.yao@alumni.stonybrook.edu> ---- - .../vdev_raidz_math_powerpc_altivec_common.h | 44 +++++++++---------- - 1 file changed, 20 insertions(+), 24 deletions(-) - -diff --git a/module/zfs/vdev_raidz_math_powerpc_altivec_common.h b/module/zfs/vdev_raidz_math_powerpc_altivec_common.h -index 46d42c5e241..f76eb47a9c6 100644 ---- a/module/zfs/vdev_raidz_math_powerpc_altivec_common.h -+++ b/module/zfs/vdev_raidz_math_powerpc_altivec_common.h -@@ -26,10 +26,6 @@ - #include <sys/types.h> - #include <sys/simd.h> - --#ifdef __linux__ --#define __asm __asm__ __volatile__ --#endif -- - #define _REG_CNT(_0, _1, _2, _3, _4, _5, _6, _7, N, ...) N - #define REG_CNT(r...) _REG_CNT(r, 8, 7, 6, 5, 4, 3, 2, 1) - -@@ -142,7 +138,7 @@ typedef struct v { - { \ - switch (REG_CNT(r)) { \ - case 8: \ -- __asm( \ -+ __asm__ __volatile__( \ - "lvx 21,0,%[SRC0]\n" \ - "lvx 20,0,%[SRC1]\n" \ - "lvx 19,0,%[SRC2]\n" \ -@@ -172,7 +168,7 @@ typedef struct v { - : "v18", "v19", "v20", "v21"); \ - break; \ - case 4: \ -- __asm( \ -+ __asm__ __volatile__( \ - "lvx 21,0,%[SRC0]\n" \ - "lvx 20,0,%[SRC1]\n" \ - "lvx 19,0,%[SRC2]\n" \ -@@ -189,7 +185,7 @@ typedef struct v { - : "v18", "v19", "v20", "v21"); \ - break; \ - case 2: \ -- __asm( \ -+ __asm__ __volatile__( \ - "lvx 21,0,%[SRC0]\n" \ - "lvx 20,0,%[SRC1]\n" \ - "vxor " VR0(r) "," VR0(r) ",21\n" \ -@@ -208,7 +204,7 @@ typedef struct v { - { \ - switch (REG_CNT(r)) { \ - case 8: \ -- __asm( \ -+ __asm__ __volatile__( \ - "vxor " VR4(r) "," VR4(r) "," VR0(r) "\n" \ - "vxor " VR5(r) "," VR5(r) "," VR1(r) "\n" \ - "vxor " VR6(r) "," VR6(r) "," VR2(r) "\n" \ -@@ -217,7 +213,7 @@ typedef struct v { - : RVR0(r), RVR1(r), RVR2(r), RVR3(r)); \ - break; \ - case 4: \ -- __asm( \ -+ __asm__ __volatile__( \ - "vxor " VR2(r) "," VR2(r) "," VR0(r) "\n" \ - "vxor " VR3(r) "," VR3(r) "," VR1(r) "\n" \ - : UVR2(r), UVR3(r) \ -@@ -232,7 +228,7 @@ typedef struct v { - { \ - switch (REG_CNT(r)) { \ - case 8: \ -- __asm( \ -+ __asm__ __volatile__( \ - "vxor " VR0(r) "," VR0(r) "," VR0(r) "\n" \ - "vxor " VR1(r) "," VR1(r) "," VR1(r) "\n" \ - "vxor " VR2(r) "," VR2(r) "," VR2(r) "\n" \ -@@ -245,7 +241,7 @@ typedef struct v { - WVR4(r), WVR5(r), WVR6(r), WVR7(r)); \ - break; \ - case 4: \ -- __asm( \ -+ __asm__ __volatile__( \ - "vxor " VR0(r) "," VR0(r) "," VR0(r) "\n" \ - "vxor " VR1(r) "," VR1(r) "," VR1(r) "\n" \ - "vxor " VR2(r) "," VR2(r) "," VR2(r) "\n" \ -@@ -253,7 +249,7 @@ typedef struct v { - : WVR0(r), WVR1(r), WVR2(r), WVR3(r)); \ - break; \ - case 2: \ -- __asm( \ -+ __asm__ __volatile__( \ - "vxor " VR0(r) "," VR0(r) "," VR0(r) "\n" \ - "vxor " VR1(r) "," VR1(r) "," VR1(r) "\n" \ - : WVR0(r), WVR1(r)); \ -@@ -267,7 +263,7 @@ typedef struct v { - { \ - switch (REG_CNT(r)) { \ - case 8: \ -- __asm( \ -+ __asm__ __volatile__( \ - "vor " VR4(r) "," VR0(r) "," VR0(r) "\n" \ - "vor " VR5(r) "," VR1(r) "," VR1(r) "\n" \ - "vor " VR6(r) "," VR2(r) "," VR2(r) "\n" \ -@@ -276,7 +272,7 @@ typedef struct v { - : RVR0(r), RVR1(r), RVR2(r), RVR3(r)); \ - break; \ - case 4: \ -- __asm( \ -+ __asm__ __volatile__( \ - "vor " VR2(r) "," VR0(r) "," VR0(r) "\n" \ - "vor " VR3(r) "," VR1(r) "," VR1(r) "\n" \ - : WVR2(r), WVR3(r) \ -@@ -291,7 +287,7 @@ typedef struct v { - { \ - switch (REG_CNT(r)) { \ - case 8: \ -- __asm( \ -+ __asm__ __volatile__( \ - "lvx " VR0(r) " ,0,%[SRC0]\n" \ - "lvx " VR1(r) " ,0,%[SRC1]\n" \ - "lvx " VR2(r) " ,0,%[SRC2]\n" \ -@@ -312,7 +308,7 @@ typedef struct v { - [SRC7] "r" ((OFFSET(src, 112)))); \ - break; \ - case 4: \ -- __asm( \ -+ __asm__ __volatile__( \ - "lvx " VR0(r) " ,0,%[SRC0]\n" \ - "lvx " VR1(r) " ,0,%[SRC1]\n" \ - "lvx " VR2(r) " ,0,%[SRC2]\n" \ -@@ -324,7 +320,7 @@ typedef struct v { - [SRC3] "r" ((OFFSET(src, 48)))); \ - break; \ - case 2: \ -- __asm( \ -+ __asm__ __volatile__( \ - "lvx " VR0(r) " ,0,%[SRC0]\n" \ - "lvx " VR1(r) " ,0,%[SRC1]\n" \ - : WVR0(r), WVR1(r) \ -@@ -340,7 +336,7 @@ typedef struct v { - { \ - switch (REG_CNT(r)) { \ - case 8: \ -- __asm( \ -+ __asm__ __volatile__( \ - "stvx " VR0(r) " ,0,%[DST0]\n" \ - "stvx " VR1(r) " ,0,%[DST1]\n" \ - "stvx " VR2(r) " ,0,%[DST2]\n" \ -@@ -362,7 +358,7 @@ typedef struct v { - : "memory"); \ - break; \ - case 4: \ -- __asm( \ -+ __asm__ __volatile__( \ - "stvx " VR0(r) " ,0,%[DST0]\n" \ - "stvx " VR1(r) " ,0,%[DST1]\n" \ - "stvx " VR2(r) " ,0,%[DST2]\n" \ -@@ -375,7 +371,7 @@ typedef struct v { - : "memory"); \ - break; \ - case 2: \ -- __asm( \ -+ __asm__ __volatile__( \ - "stvx " VR0(r) " ,0,%[DST0]\n" \ - "stvx " VR1(r) " ,0,%[DST1]\n" \ - : : [DST0] "r" ((OFFSET(dst, 0))), \ -@@ -400,7 +396,7 @@ typedef struct v { - - #define MUL2_SETUP() \ - { \ -- __asm( \ -+ __asm__ __volatile__( \ - "vspltisb " VR(16) ",14\n" \ - "vspltisb " VR(17) ",15\n" \ - "vaddubm " VR(16) "," VR(17) "," VR(16) "\n" \ -@@ -412,7 +408,7 @@ typedef struct v { - { \ - switch (REG_CNT(r)) { \ - case 4: \ -- __asm( \ -+ __asm__ __volatile__( \ - "vcmpgtsb 19," VR(17) "," VR0(r) "\n" \ - "vcmpgtsb 18," VR(17) "," VR1(r) "\n" \ - "vcmpgtsb 21," VR(17) "," VR2(r) "\n" \ -@@ -434,7 +430,7 @@ typedef struct v { - : "v18", "v19", "v20", "v21"); \ - break; \ - case 2: \ -- __asm( \ -+ __asm__ __volatile__( \ - "vcmpgtsb 19," VR(17) "," VR0(r) "\n" \ - "vcmpgtsb 18," VR(17) "," VR1(r) "\n" \ - "vand 19,19," VR(16) "\n" \ -@@ -478,7 +474,7 @@ typedef struct v { - { \ - switch (REG_CNT(r)) { \ - case 2: \ -- __asm( \ -+ __asm__ __volatile__( \ - /* lts for upper part */ \ - "vspltisb 15,15\n" \ - "lvx 10,0,%[lt0]\n" \ diff --git a/sys-fs/zfs-kmod/zfs-kmod-2.1.7.ebuild b/sys-fs/zfs-kmod/zfs-kmod-2.1.7.ebuild deleted file mode 100644 index 3f2082380eaf..000000000000 --- a/sys-fs/zfs-kmod/zfs-kmod-2.1.7.ebuild +++ /dev/null @@ -1,219 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit autotools dist-kernel-utils flag-o-matic linux-mod toolchain-funcs - -DESCRIPTION="Linux ZFS kernel module for sys-fs/zfs" -HOMEPAGE="https://github.com/openzfs/zfs" - -if [[ ${PV} == "9999" ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/openzfs/zfs.git" -else - VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/openzfs.asc - inherit verify-sig - - MY_PV="${PV/_rc/-rc}" - SRC_URI="https://github.com/openzfs/zfs/releases/download/zfs-${MY_PV}/zfs-${MY_PV}.tar.gz" - SRC_URI+=" verify-sig? ( https://github.com/openzfs/zfs/releases/download/zfs-${MY_PV}/zfs-${MY_PV}.tar.gz.asc )" - S="${WORKDIR}/zfs-${PV%_rc?}" - ZFS_KERNEL_COMPAT="6.0" - - # 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 ~sparc" - fi -fi - -LICENSE="CDDL MIT debug? ( GPL-2+ )" -SLOT="0/${PVR}" -IUSE="custom-cflags debug +rootfs" - -RDEPEND="${DEPEND}" - -BDEPEND=" - dev-lang/perl - app-alternatives/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? ( sec-keys/openpgp-keys-openzfs ) - dist-kernel? ( <virtual/dist-kernel-${ZFS_KERNEL_DEP}:= ) - " -fi - -# PDEPEND in this form is needed to trick portage suggest -# enabling dist-kernel if only 1 package have it set -PDEPEND="dist-kernel? ( ~sys-fs/zfs-${PV}[dist-kernel] )" - -RESTRICT="debug? ( strip ) test" - -DOCS=( AUTHORS COPYRIGHT META README.md ) - -PATCHES=( - "${FILESDIR}"/${PN}-2.1.6-fgrep.patch - - # https://github.com/openzfs/zfs/issues/14308 - "${FILESDIR}"/2.1.7-ppc64-ieee128-compat.patch -) - -pkg_pretend() { - use rootfs || return 0 - - if has_version virtual/dist-kernel && ! use dist-kernel; then - ewarn "You have virtual/dist-kernel installed, but" - ewarn "USE=\"dist-kernel\" is not enabled for ${CATEGORY}/${PN}" - ewarn "It's recommended to globally enable dist-kernel USE flag" - ewarn "to auto-trigger initrd rebuilds with kernel updates" - fi -} - -pkg_setup() { - CONFIG_CHECK=" - !DEBUG_LOCK_ALLOC - EFI_PARTITION - MODULES - !PAX_KERNEXEC_PLUGIN_METHOD_OR - !TRIM_UNUSED_KSYMS - ZLIB_DEFLATE - ZLIB_INFLATE - " - - use debug && CONFIG_CHECK="${CONFIG_CHECK} - FRAME_POINTER - DEBUG_INFO - !DEBUG_INFO_REDUCED - " - - use rootfs && \ - CONFIG_CHECK="${CONFIG_CHECK} - BLK_DEV_INITRD - DEVTMPFS - " - - kernel_is -lt 5 && CONFIG_CHECK="${CONFIG_CHECK} IOSCHED_NOOP" - - if [[ ${PV} != "9999" ]]; then - local kv_major_max kv_minor_max zcompat - zcompat="${ZFS_KERNEL_COMPAT_OVERRIDE:-${ZFS_KERNEL_COMPAT}}" - kv_major_max="${zcompat%%.*}" - zcompat="${zcompat#*.}" - kv_minor_max="${zcompat%%.*}" - kernel_is -le "${kv_major_max}" "${kv_minor_max}" || die \ - "Linux ${kv_major_max}.${kv_minor_max} is the latest supported version" - - fi - - kernel_is -ge 3 10 || die "Linux 3.10 or newer required" - - linux-mod_pkg_setup -} - -src_unpack() { - if use verify-sig ; then - # Needed for downloaded patch (which is unsigned, which is fine) - verify-sig_verify_detached "${DISTDIR}"/zfs-${MY_PV}.tar.gz{,.asc} - fi - - default -} - -src_prepare() { - default - - # Run unconditionally (bug #792627) - eautoreconf - - if [[ ${PV} != "9999" ]]; then - # Set module revision number - sed -i "s/\(Release:\)\(.*\)1/\1\2${PR}-gentoo/" META || die "Could not set Gentoo release" - fi -} - -src_configure() { - set_arch_to_kernel - - use custom-cflags || strip-flags - - filter-ldflags -Wl,* - - # Set CROSS_COMPILE in the environment. - # This allows the user to override it via make.conf or via a local Makefile. - # https://bugs.gentoo.org/811600 - export CROSS_COMPILE=${CROSS_COMPILE-${CHOST}-} - - local myconf=( - HOSTCC="$(tc-getBUILD_CC)" - --bindir="${EPREFIX}/bin" - --sbindir="${EPREFIX}/sbin" - --with-config=kernel - --with-linux="${KV_DIR}" - --with-linux-obj="${KV_OUT_DIR}" - $(use_enable debug) - ) - - econf "${myconf[@]}" -} - -src_compile() { - set_arch_to_kernel - - myemakeargs=( - HOSTCC="$(tc-getBUILD_CC)" - V=1 - ) - - emake "${myemakeargs[@]}" -} - -src_install() { - set_arch_to_kernel - - myemakeargs+=( - DEPMOD=: - # INSTALL_MOD_PATH ?= $(DESTDIR) in module/Makefile - DESTDIR="${D}" - ) - - emake "${myemakeargs[@]}" install - - einstalldocs -} - -pkg_postinst() { - linux-mod_pkg_postinst - - if [[ -z ${ROOT} ]] && use dist-kernel; then - set_arch_to_pkgmgr - dist-kernel_reinstall_initramfs "${KV_DIR}" "${KV_FULL}" - fi - - if use x86 || use arm; then - ewarn "32-bit kernels will likely require increasing vmalloc to" - ewarn "at least 256M and decreasing zfs_arc_max to some value less than that." - fi - - if has_version sys-boot/grub; then - ewarn "This version of OpenZFS includes support for new feature flags" - ewarn "that are incompatible with previous versions. GRUB2 support for" - ewarn "/boot with the new feature flags is not yet available." - ewarn "Do *NOT* upgrade root pools to use the new feature flags." - ewarn "Any new pools will be created with the new feature flags by default" - ewarn "and will not be compatible with older versions of OpenZFS. To" - ewarn "create a new pool that is backward compatible wih GRUB2, use " - ewarn - ewarn "zpool create -o compatibility=grub2 ..." - ewarn - ewarn "Refer to /usr/share/zfs/compatibility.d/grub2 for list of features." - fi -} diff --git a/sys-fs/zfs-kmod/zfs-kmod-2.1.10-r1.ebuild b/sys-fs/zfs-kmod/zfs-kmod-2.2.0_rc1.ebuild index bd0070f85ad1..6e98cece951c 100644 --- a/sys-fs/zfs-kmod/zfs-kmod-2.1.10-r1.ebuild +++ b/sys-fs/zfs-kmod/zfs-kmod-2.2.0_rc1.ebuild @@ -3,29 +3,33 @@ EAPI=8 -inherit autotools dist-kernel-utils flag-o-matic linux-mod toolchain-funcs +inherit autotools dist-kernel-utils flag-o-matic linux-mod-r1 multiprocessing DESCRIPTION="Linux ZFS kernel module for sys-fs/zfs" HOMEPAGE="https://github.com/openzfs/zfs" -if [[ ${PV} == "9999" ]]; then - inherit git-r3 +MODULES_KERNEL_MAX=6.3 +MODULES_KERNEL_MIN=3.10 + +if [[ ${PV} == 9999 ]] ; then EGIT_REPO_URI="https://github.com/openzfs/zfs.git" + inherit git-r3 + unset MODULES_KERNEL_MAX else - VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/openzfs.asc + VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/openzfs.asc inherit verify-sig - MY_PV="${PV/_rc/-rc}" + MY_PV=${PV/_rc/-rc} SRC_URI="https://github.com/openzfs/zfs/releases/download/zfs-${MY_PV}/zfs-${MY_PV}.tar.gz" SRC_URI+=" verify-sig? ( https://github.com/openzfs/zfs/releases/download/zfs-${MY_PV}/zfs-${MY_PV}.tar.gz.asc )" - S="${WORKDIR}/zfs-${PV%_rc?}" - ZFS_KERNEL_COMPAT="6.2" + S="${WORKDIR}/zfs-${MY_PV}" - # increments minor eg 5.14 -> 5.15, and still supports override. + ZFS_KERNEL_COMPAT="${MODULES_KERNEL_MAX}" + # 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 + if [[ ${PV} != *_rc* ]] ; then KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~sparc" fi fi @@ -33,36 +37,29 @@ fi LICENSE="CDDL MIT debug? ( GPL-2+ )" SLOT="0/${PVR}" IUSE="custom-cflags debug +rootfs" - -RDEPEND="${DEPEND}" +RESTRICT="test" BDEPEND=" - dev-lang/perl app-alternatives/awk + dev-lang/perl " -# 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? ( sec-keys/openpgp-keys-openzfs ) - dist-kernel? ( <virtual/dist-kernel-${ZFS_KERNEL_DEP}:= ) +if [[ ${PV} != 9999 ]] ; then + BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-openzfs )" + + IUSE+=" +dist-kernel-cap" + RDEPEND=" + dist-kernel-cap? ( dist-kernel? ( + <virtual/dist-kernel-${ZFS_KERNEL_DEP} + ) ) " fi -# PDEPEND in this form is needed to trick portage suggest -# enabling dist-kernel if only 1 package have it set +# Used to suggest matching USE, but without suggesting to disable PDEPEND="dist-kernel? ( ~sys-fs/zfs-${PV}[dist-kernel] )" -RESTRICT="debug? ( strip ) test" - -DOCS=( AUTHORS COPYRIGHT META README.md ) - PATCHES=( - # https://github.com/openzfs/zfs/issues/14753 - "${FILESDIR}"/2.1.10-Revert-ZFS_IOC_COUNT_FILLED-does-unnecessary-txg_wai.patch + "${FILESDIR}"/${PN}-2.1.11-gentoo.patch ) pkg_pretend() { @@ -77,31 +74,26 @@ pkg_pretend() { } pkg_setup() { - CONFIG_CHECK=" - !DEBUG_LOCK_ALLOC + local CONFIG_CHECK=" EFI_PARTITION - MODULES - !PAX_KERNEXEC_PLUGIN_METHOD_OR - !TRIM_UNUSED_KSYMS ZLIB_DEFLATE ZLIB_INFLATE + !DEBUG_LOCK_ALLOC + !PAX_KERNEXEC_PLUGIN_METHOD_OR " - - use debug && CONFIG_CHECK="${CONFIG_CHECK} - FRAME_POINTER + use debug && CONFIG_CHECK+=" DEBUG_INFO + FRAME_POINTER !DEBUG_INFO_REDUCED " - - use rootfs && \ - CONFIG_CHECK="${CONFIG_CHECK} - BLK_DEV_INITRD - DEVTMPFS + use rootfs && CONFIG_CHECK+=" + BLK_DEV_INITRD + DEVTMPFS " - kernel_is -lt 5 && CONFIG_CHECK="${CONFIG_CHECK} IOSCHED_NOOP" + kernel_is -lt 5 && CONFIG_CHECK+=" IOSCHED_NOOP" - if [[ ${PV} != "9999" ]]; then + if [[ ${PV} != 9999 ]] ; then local kv_major_max kv_minor_max zcompat zcompat="${ZFS_KERNEL_COMPAT_OVERRIDE:-${ZFS_KERNEL_COMPAT}}" kv_major_max="${zcompat%%.*}" @@ -109,21 +101,9 @@ pkg_setup() { kv_minor_max="${zcompat%%.*}" kernel_is -le "${kv_major_max}" "${kv_minor_max}" || die \ "Linux ${kv_major_max}.${kv_minor_max} is the latest supported version" - fi - kernel_is -ge 3 10 || die "Linux 3.10 or newer required" - - linux-mod_pkg_setup -} - -src_unpack() { - if use verify-sig ; then - # Needed for downloaded patch (which is unsigned, which is fine) - verify-sig_verify_detached "${DISTDIR}"/zfs-${MY_PV}.tar.gz{,.asc} - fi - - default + linux-mod-r1_pkg_setup } src_prepare() { @@ -132,76 +112,96 @@ src_prepare() { # Run unconditionally (bug #792627) eautoreconf - if [[ ${PV} != "9999" ]]; then + if [[ ${PV} != 9999 ]] ; then # Set module revision number - sed -i "s/\(Release:\)\(.*\)1/\1\2${PR}-gentoo/" META || die "Could not set Gentoo release" + sed -Ei "s/(Release:.*)1/\1${PR}-gentoo/" META || die fi } src_configure() { - set_arch_to_kernel - use custom-cflags || strip-flags - filter-ldflags -Wl,* - # Set CROSS_COMPILE in the environment. - # This allows the user to override it via make.conf or via a local Makefile. - # https://bugs.gentoo.org/811600 - export CROSS_COMPILE=${CROSS_COMPILE-${CHOST}-} - local myconf=( - HOSTCC="$(tc-getBUILD_CC)" - --bindir="${EPREFIX}/bin" - --sbindir="${EPREFIX}/sbin" + --bindir="${EPREFIX}"/bin + --sbindir="${EPREFIX}"/sbin --with-config=kernel --with-linux="${KV_DIR}" --with-linux-obj="${KV_OUT_DIR}" $(use_enable debug) + + # See gentoo.patch + GENTOO_MAKEARGS_EVAL="${MODULES_MAKEARGS[*]@Q}" + TEST_JOBS="$(makeopts_jobs)" ) econf "${myconf[@]}" } src_compile() { - set_arch_to_kernel - - myemakeargs=( - HOSTCC="$(tc-getBUILD_CC)" - V=1 - ) - - emake "${myemakeargs[@]}" + emake "${MODULES_MAKEARGS[@]}" } src_install() { - set_arch_to_kernel + emake "${MODULES_MAKEARGS[@]}" DESTDIR="${ED}" install + modules_post_process - myemakeargs+=( - DEPMOD=: - # INSTALL_MOD_PATH ?= $(DESTDIR) in module/Makefile - DESTDIR="${D}" - ) + dodoc AUTHORS COPYRIGHT META README.md +} - emake "${myemakeargs[@]}" install +_old_layout_cleanup() { + # new files are just extra/{spl,zfs}.ko with no subdirs. + local olddir=( + avl/zavl + icp/icp + lua/zlua + nvpair/znvpair + spl/spl + unicode/zunicode + zcommon/zcommon + zfs/zfs + zstd/zzstd + ) - einstalldocs + # kernel/module/Kconfig contains possible compressed extentions. + local kext kextfiles + for kext in .ko{,.{gz,xz,zst}}; do + kextfiles+=( "${olddir[@]/%/${kext}}" ) + done + + local oldfile oldpath + for oldfile in "${kextfiles[@]}"; do + oldpath="${EROOT}/lib/modules/${KV_FULL}/extra/${oldfile}" + if [[ -f "${oldpath}" ]]; then + ewarn "Found obsolete zfs module ${oldfile} for current kernel ${KV_FULL}, removing." + rm -rv "${oldpath}" || die + # we do not remove non-empty directories just for safety in case there's something else. + # also it may fail if there are both compressed and uncompressed modules installed. + rmdir -v --ignore-fail-on-non-empty "${oldpath%/*.*}" || die + fi + done } pkg_postinst() { - linux-mod_pkg_postinst + # Check for old module layout before doing anything else. + # only attempt layout cleanup if new .ko location is used. + local newko=( "${EROOT}/lib/modules/${KV_FULL}/extra"/{zfs,spl}.ko* ) + # We check first array member, if glob above did not exand, it will be "zfs.ko*" and -f will return false. + # if glob expanded -f will do correct file precense check. + [[ -f ${newko[0]} ]] && _old_layout_cleanup + + linux-mod-r1_pkg_postinst - if [[ -z ${ROOT} ]] && use dist-kernel; then - set_arch_to_pkgmgr + if [[ -z ${ROOT} ]] && use dist-kernel ; then dist-kernel_reinstall_initramfs "${KV_DIR}" "${KV_FULL}" fi - if use x86 || use arm; then + if use x86 || use arm ; then ewarn "32-bit kernels will likely require increasing vmalloc to" ewarn "at least 256M and decreasing zfs_arc_max to some value less than that." fi - if has_version sys-boot/grub; then + if has_version sys-boot/grub ; then ewarn "This version of OpenZFS includes support for new feature flags" ewarn "that are incompatible with previous versions. GRUB2 support for" ewarn "/boot with the new feature flags is not yet available." diff --git a/sys-fs/zfs-kmod/zfs-kmod-9999.ebuild b/sys-fs/zfs-kmod/zfs-kmod-9999.ebuild index 0c5bfab161cc..6e98cece951c 100644 --- a/sys-fs/zfs-kmod/zfs-kmod-9999.ebuild +++ b/sys-fs/zfs-kmod/zfs-kmod-9999.ebuild @@ -22,7 +22,7 @@ else MY_PV=${PV/_rc/-rc} SRC_URI="https://github.com/openzfs/zfs/releases/download/zfs-${MY_PV}/zfs-${MY_PV}.tar.gz" SRC_URI+=" verify-sig? ( https://github.com/openzfs/zfs/releases/download/zfs-${MY_PV}/zfs-${MY_PV}.tar.gz.asc )" - S="${WORKDIR}/zfs-${PV%_rc?}" + S="${WORKDIR}/zfs-${MY_PV}" ZFS_KERNEL_COMPAT="${MODULES_KERNEL_MAX}" # Increments minor eg 5.14 -> 5.15, and still supports override. @@ -40,8 +40,8 @@ IUSE="custom-cflags debug +rootfs" RESTRICT="test" BDEPEND=" - dev-lang/perl app-alternatives/awk + dev-lang/perl " if [[ ${PV} != 9999 ]] ; then @@ -183,10 +183,10 @@ _old_layout_cleanup() { } pkg_postinst() { - # check for old module layout before doing anything else. + # Check for old module layout before doing anything else. # only attempt layout cleanup if new .ko location is used. local newko=( "${EROOT}/lib/modules/${KV_FULL}/extra"/{zfs,spl}.ko* ) - # we check first array member, if glob above did not exand, it will be "zfs.ko*" and -f will return false. + # We check first array member, if glob above did not exand, it will be "zfs.ko*" and -f will return false. # if glob expanded -f will do correct file precense check. [[ -f ${newko[0]} ]] && _old_layout_cleanup |