[gentoo-commits] repo/gentoo:master commit in: sys-fs/zfs-kmod/files/, sys-fs/zfs-kmod/
commit: 20e398bbdcce0255ad5738232e66a992deda81d1 Author: Sam James gentoo org> AuthorDate: Thu Dec 28 03:39:15 2023 + Commit: Sam James gentoo org> CommitDate: Thu Dec 28 03:39:15 2023 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=20e398bb sys-fs/zfs-kmod: drop 2.1.12, 2.1.13, 2.1.13-r1 Signed-off-by: Sam James gentoo.org> sys-fs/zfs-kmod/Manifest | 4 - ...s_dmu_offset_next_sync-tunable-by-default.patch | 40 - sys-fs/zfs-kmod/zfs-kmod-2.1.12.ebuild | 177 sys-fs/zfs-kmod/zfs-kmod-2.1.13-r1.ebuild | 178 - sys-fs/zfs-kmod/zfs-kmod-2.1.13.ebuild | 177 5 files changed, 576 deletions(-) diff --git a/sys-fs/zfs-kmod/Manifest b/sys-fs/zfs-kmod/Manifest index 1701e00a2c16..8c893b1a1e3f 100644 --- a/sys-fs/zfs-kmod/Manifest +++ b/sys-fs/zfs-kmod/Manifest @@ -1,7 +1,3 @@ -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.13.tar.gz 35170063 BLAKE2B 88f4b27a872071590294cf2a93d19633bacfaf1214fc4f06ab7ae7778376978754e0e2566d7bfe659d84426f525ecd05679b98310ddfc2d5938804c36fd03904 SHA512 d06fce8faa22b0cab2c69befa3842476703433fa90530d1fdf168716afd2039e97b124aa8ef581bed3bc19604fa2faa0bc1e29f6d028e3ef0085f0e34e05230a -DIST zfs-2.1.13.tar.gz.asc 836 BLAKE2B 35d3299cfe1d37848f1a0e75a00e08a49a37356ccfc2f47fa1c5c64a1e16adc8030c35047fb45347ec4328d90703ed1623de1c799bef9b6297553aa7b357e8da SHA512 f35c89fd6b1019098b103427b525e32a691c796debde743f9d99953623d8c2bc6deb1ed88865e519d5fa60b259b1d74cce3c829dd1e2eb59aa29abc20046a0db DIST zfs-2.1.14.tar.gz 35167471 BLAKE2B a7b22eaf05e4fbf416ebe4d7b884c515942fc9375c1dd322cefa00c19c550b9318a4192d6a909d49d58523c8f1a6eaf00189dd58e6543fae17cf8cc35042f469 SHA512 4a65c8b7d5576fa2dcc14e7ccaa93191c1d3791479cf89bd02c2bd04434ff5e93709b328796d4f9ba93da19f12772e359df373f40919350a3e1e4c52758b47c8 DIST zfs-2.1.14.tar.gz.asc 836 BLAKE2B f01bc58bf6c3d367c494ed4ea9f3fb1141f3aafdbf4f913b9e0d60d31557076d5ae0e25ca93b013f5fd85e21ba5ae9f61e1a03af54bb0c743869c0ce3d5519df SHA512 be0f386cce952b4047dc2448e356078668e8d4392802dd3bb1a426741f15f4d9fb689cd1cb09972bdbc9fe2e4e782ec4b4754fe811c5657bc1f5308bd38e3926 DIST zfs-2.2.1.tar.gz 33814243 BLAKE2B c3ff95c892024a11ee5c266b10e3354074606665a201fbab16e1ed12550340e0d991d98bd74f794331b68bd16cd6147a9e8937b8cda72d454abce72a22bafec6 SHA512 05e17046ac4f0ba923151be3e554e075db4783c8936c5dcee2d3b6d459fb386ba33f9eb38d15c185db58a1d26926147a66c3b3fe14e9de40987f0e95efa2bb31 diff --git a/sys-fs/zfs-kmod/files/zfs-kmod-2.1.13-Disable-zfs_dmu_offset_next_sync-tunable-by-default.patch b/sys-fs/zfs-kmod/files/zfs-kmod-2.1.13-Disable-zfs_dmu_offset_next_sync-tunable-by-default.patch deleted file mode 100644 index c03398450e48.. --- a/sys-fs/zfs-kmod/files/zfs-kmod-2.1.13-Disable-zfs_dmu_offset_next_sync-tunable-by-default.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 2b266bd36980caefe353411bd56b2487c44aeb6e Mon Sep 17 00:00:00 2001 -From: Sam James -Date: Fri, 24 Nov 2023 21:38:06 + -Subject: [PATCH] Disable zfs_dmu_offset_next_sync tunable by default - -As a mitigation until more is understood and fixes are tested & reviewed, change -the default of zfs_dmu_offset_next_sync from 1 to 0, as it was before -05b3eb6d232009db247882a39d518e7282630753. - -There are no reported cases of The Bug being hit with zfs_dmu_offset_next_sync=1: -that does not mean this is a cure or a real fix, but it _appears_ to be at least -effective in reducing the chances of it happening. By itself, it's a safe change -anyway, so it feels worth us doing while we wait. - -Bug: https://github.com/openzfs/zfs/issues/11900 -Bug: https://github.com/openzfs/zfs/issues/15526 -Bug: https://bugs.gentoo.org/917224 -Signed-off-by: Sam James a/man/man4/zfs.4 -+++ b/man/man4/zfs.4 -@@ -1646,7 +1646,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 1 Ns | Ns 0 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 sync data when - .Sy SEEK_HOLE No or Sy SEEK_DATA a/module/zfs/dmu.c -+++ b/module/zfs/dmu.c -@@ -80,7 +80,7 @@ unsigned long zfs_per_txg_dirty_frees_percent = 30; - * Disabling
[gentoo-commits] repo/gentoo:master commit in: sys-fs/zfs-kmod/files/, sys-fs/zfs-kmod/
commit: 234cba44970ef6d6e2fa89fcd1a73f101b0781a6 Author: Georgy Yakovlev gentoo org> AuthorDate: Fri Jan 27 19:24:04 2023 + Commit: Georgy Yakovlev gentoo org> CommitDate: Fri Jan 27 19:33:37 2023 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=234cba44 sys-fs/zfs-kmod: drop 2.1.8-r1 Signed-off-by: Georgy Yakovlev gentoo.org> sys-fs/zfs-kmod/Manifest | 2 - sys-fs/zfs-kmod/files/2.1.8-gang-revert.patch | 14 -- sys-fs/zfs-kmod/zfs-kmod-2.1.8-r1.ebuild | 217 -- 3 files changed, 233 deletions(-) diff --git a/sys-fs/zfs-kmod/Manifest b/sys-fs/zfs-kmod/Manifest index e2e1f8bbdc71..f7e8d6284543 100644 --- a/sys-fs/zfs-kmod/Manifest +++ b/sys-fs/zfs-kmod/Manifest @@ -2,7 +2,5 @@ DIST zfs-2.1.6.tar.gz 34951282 BLAKE2B 615fe7a2128af77c6c855ea52b6503a78f0c992ea DIST zfs-2.1.6.tar.gz.asc 836 BLAKE2B d85a79f8824a92c4d0a9682646f79c14871ebe27764289dc87cd9b0a773b7295538780401e70c492a9e4e7097ff2b3e459f7e0a7fdce2e2a59d3f467c41d88b3 SHA512 a83fcc00a8b35f1a1f9b94097d453019333a5351a3d78656dbd9ef732655ee817ccc88068c5ba11b5ff4a285e02250aee4169cc1450025edf547a2329fca7e15 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.8.tar.gz 35109766 BLAKE2B e725a43e5a62998209d638adcec061858f0caf05abd30bcfbaf8c6f6b9f47209808d9fcd726a830ea800793cd719c4471a498a10dab66119c4d24dbf09b1c481 SHA512 9c6c2c30f55b089ce29f8895ccc9032615ab25e47291b2d3384bcbb3d1fdb2e7a6fb67725a6fae04b6e28bfdc6dc97fae3b9b3ed8f802e75866c83eabf79c296 -DIST zfs-2.1.8.tar.gz.asc 836 BLAKE2B 833457dee5948b255312c30da090c77cf8ec1d82b7498a8e85ccd8e4be12f948e9f00e742e76fc1392550756dd1d9c3b610fa29d25a61c41afe32b1c1a728602 SHA512 91f964e33772e77d1c4501e0ad526f2ff5cb45fb571bb25218f3f45f4662d544a92146633ef570d067bb7e6e7f36bd00da878b373143cae41611cae6f6c644cb 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 diff --git a/sys-fs/zfs-kmod/files/2.1.8-gang-revert.patch b/sys-fs/zfs-kmod/files/2.1.8-gang-revert.patch deleted file mode 100644 index 13ab0575f4c8.. --- a/sys-fs/zfs-kmod/files/2.1.8-gang-revert.patch +++ /dev/null @@ -1,14 +0,0 @@ -@gyakovlev: -revert: https://github.com/openzfs/zfs/commit/0156253d29a303bdcca3e535958e754d8f086e33 -due to: https://github.com/openzfs/zfs/issues/14413 b/module/zfs/zio.c -+++ a/module/zfs/zio.c -@@ -2827,7 +2827,7 @@ -* have a third copy. -*/ - gbh_copies = MIN(copies + 1, spa_max_replication(spa)); -+ if (gio->io_prop.zp_encrypt && gbh_copies >= SPA_DVAS_PER_BP) -- if (BP_IS_ENCRYPTED(bp) && gbh_copies >= SPA_DVAS_PER_BP) - gbh_copies = SPA_DVAS_PER_BP - 1; - - int flags = METASLAB_HINTBP_FAVOR | METASLAB_GANG_HEADER; diff --git a/sys-fs/zfs-kmod/zfs-kmod-2.1.8-r1.ebuild b/sys-fs/zfs-kmod/zfs-kmod-2.1.8-r1.ebuild deleted file mode 100644 index 4213efde8be1.. --- a/sys-fs/zfs-kmod/zfs-kmod-2.1.8-r1.ebuild +++ /dev/null @@ -1,217 +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} == "" ]]; 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.1" - - # increments minor eg 5.14 -> 5.15, and still
[gentoo-commits] repo/gentoo:master commit in: sys-fs/zfs-kmod/files/, sys-fs/zfs-kmod/
commit: ee070d0d2ea651c3f6cf50c335f5e98317d060ca Author: Georgy Yakovlev gentoo org> AuthorDate: Tue Jan 24 21:01:01 2023 + Commit: Georgy Yakovlev gentoo org> CommitDate: Tue Jan 24 21:03:40 2023 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ee070d0d sys-fs/zfs-kmod: revbump 2.1.8, revert 0156253 Signed-off-by: Georgy Yakovlev gentoo.org> sys-fs/zfs-kmod/files/2.1.8-gang-revert.patch | 14 ++ .../{zfs-kmod-2.1.8.ebuild => zfs-kmod-2.1.8-r1.ebuild}| 5 + 2 files changed, 19 insertions(+) diff --git a/sys-fs/zfs-kmod/files/2.1.8-gang-revert.patch b/sys-fs/zfs-kmod/files/2.1.8-gang-revert.patch new file mode 100644 index ..13ab0575f4c8 --- /dev/null +++ b/sys-fs/zfs-kmod/files/2.1.8-gang-revert.patch @@ -0,0 +1,14 @@ +@gyakovlev: +revert: https://github.com/openzfs/zfs/commit/0156253d29a303bdcca3e535958e754d8f086e33 +due to: https://github.com/openzfs/zfs/issues/14413 +--- b/module/zfs/zio.c a/module/zfs/zio.c +@@ -2827,7 +2827,7 @@ +* have a third copy. +*/ + gbh_copies = MIN(copies + 1, spa_max_replication(spa)); ++ if (gio->io_prop.zp_encrypt && gbh_copies >= SPA_DVAS_PER_BP) +- if (BP_IS_ENCRYPTED(bp) && gbh_copies >= SPA_DVAS_PER_BP) + gbh_copies = SPA_DVAS_PER_BP - 1; + + int flags = METASLAB_HINTBP_FAVOR | METASLAB_GANG_HEADER; diff --git a/sys-fs/zfs-kmod/zfs-kmod-2.1.8.ebuild b/sys-fs/zfs-kmod/zfs-kmod-2.1.8-r1.ebuild similarity index 98% rename from sys-fs/zfs-kmod/zfs-kmod-2.1.8.ebuild rename to sys-fs/zfs-kmod/zfs-kmod-2.1.8-r1.ebuild index ac514d696c4f..4213efde8be1 100644 --- a/sys-fs/zfs-kmod/zfs-kmod-2.1.8.ebuild +++ b/sys-fs/zfs-kmod/zfs-kmod-2.1.8-r1.ebuild @@ -60,6 +60,11 @@ RESTRICT="debug? ( strip ) test" DOCS=( AUTHORS COPYRIGHT META README.md ) +PATCHES=( + # https://github.com/openzfs/zfs/issues/14413 + "${FILESDIR}/${PV}-gang-revert.patch" +) + pkg_pretend() { use rootfs || return 0
[gentoo-commits] repo/gentoo:master commit in: sys-fs/zfs-kmod/files/, sys-fs/zfs-kmod/
commit: 06df21657de6a4d31985750139fe4817c6a256ad Author: Georgy Yakovlev gentoo org> AuthorDate: Fri Jan 13 04:32:45 2023 + Commit: Georgy Yakovlev gentoo org> CommitDate: Fri Jan 13 04:32:45 2023 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=06df2165 sys-fs/zfs-kmod: add ieee-long-double patch to 2.1.7 Signed-off-by: Georgy Yakovlev gentoo.org> .../files/2.1.7-ppc64-ieee128-compat.patch | 217 + sys-fs/zfs-kmod/zfs-kmod-2.1.7.ebuild | 5 +- 2 files changed, 221 insertions(+), 1 deletion(-) 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 new file mode 100644 index ..5613cb8ca9d1 --- /dev/null +++ b/sys-fs/zfs-kmod/files/2.1.7-ppc64-ieee128-compat.patch @@ -0,0 +1,217 @@ +From 8324d738fdb3096bd97336476bb399e6c312289a Mon Sep 17 00:00:00 2001 +From: Richard Yao +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 +--- + .../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 + #include + +-#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__(
[gentoo-commits] repo/gentoo:master commit in: sys-fs/zfs-kmod/files/, sys-fs/zfs-kmod/
commit: 468b165fb4ef100a9fb630dffa4feda1ed3089c5 Author: Sam James gentoo org> AuthorDate: Thu Jun 30 10:37:42 2022 + Commit: Sam James gentoo org> CommitDate: Thu Jun 30 10:37:49 2022 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=468b165f sys-fs/zfs-kmod: backport build fixes Closes: https://bugs.gentoo.org/855182 Signed-off-by: Sam James gentoo.org> sys-fs/zfs-kmod/files/2.1.5-build-issues.patch | 74 ++ sys-fs/zfs-kmod/zfs-kmod-2.1.5.ebuild | 5 ++ 2 files changed, 79 insertions(+) diff --git a/sys-fs/zfs-kmod/files/2.1.5-build-issues.patch b/sys-fs/zfs-kmod/files/2.1.5-build-issues.patch new file mode 100644 index ..cca6561b16f7 --- /dev/null +++ b/sys-fs/zfs-kmod/files/2.1.5-build-issues.patch @@ -0,0 +1,74 @@ +https://github.com/openzfs/zfs/commit/a6e8113fed8a508ffda13cf1c4d8da99a4e8133a +https://github.com/openzfs/zfs/commit/60e389ca10085acfa7cd35f79ab4465d968a942f +Cherry-picked from https://github.com/openzfs/zfs/pull/13575 + +https://bugs.gentoo.org/855182 +--- a/config/always-compiler-options.m4 b/config/always-compiler-options.m4 +@@ -205,6 +205,29 @@ AC_DEFUN([ZFS_AC_CONFIG_ALWAYS_CC_NO_OMIT_FRAME_POINTER], [ + AC_SUBST([NO_OMIT_FRAME_POINTER]) + ]) + ++dnl # ++dnl # Check if cc supports -Winfinite-recursion option. ++dnl # ++AC_DEFUN([ZFS_AC_CONFIG_ALWAYS_CC_INFINITE_RECURSION], [ ++ AC_MSG_CHECKING([whether $CC supports -Winfinite-recursion]) ++ ++ saved_flags="$CFLAGS" ++ CFLAGS="$CFLAGS -Werror -Winfinite-recursion" ++ ++ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], [])], [ ++ INFINITE_RECURSION=-Winfinite-recursion ++ AC_DEFINE([HAVE_INFINITE_RECURSION], 1, ++ [Define if compiler supports -Winfinite-recursion]) ++ AC_MSG_RESULT([yes]) ++ ], [ ++ INFINITE_RECURSION= ++ AC_MSG_RESULT([no]) ++ ]) ++ ++ CFLAGS="$saved_flags" ++ AC_SUBST([INFINITE_RECURSION]) ++]) ++ + dnl # + dnl # Check if cc supports -fno-ipa-sra option. + dnl # +--- a/config/zfs-build.m4 b/config/zfs-build.m4 +@@ -211,6 +211,7 @@ AC_DEFUN([ZFS_AC_CONFIG_ALWAYS], [ + + ZFS_AC_CONFIG_ALWAYS_CC_NO_UNUSED_BUT_SET_VARIABLE + ZFS_AC_CONFIG_ALWAYS_CC_NO_BOOL_COMPARE ++ ZFS_AC_CONFIG_ALWAYS_CC_INFINITE_RECURSION + ZFS_AC_CONFIG_ALWAYS_CC_IMPLICIT_FALLTHROUGH + ZFS_AC_CONFIG_ALWAYS_CC_FRAME_LARGER_THAN + ZFS_AC_CONFIG_ALWAYS_CC_NO_FORMAT_TRUNCATION +--- a/module/lua/ldo.c b/module/lua/ldo.c +@@ -168,6 +168,13 @@ static void seterrorobj (lua_State *L, int errcode, StkId oldtop) { + L->top = oldtop + 1; + } + ++/* ++ * Silence infinite recursion warning which was added to -Wall in gcc 12.1 ++ */ ++#if defined(HAVE_INFINITE_RECURSION) ++#pragma GCC diagnostic push ++#pragma GCC diagnostic ignored "-Winfinite-recursion" ++#endif + + l_noret luaD_throw (lua_State *L, int errcode) { + if (L->errorJmp) { /* thread has an error handler? */ +@@ -190,6 +197,10 @@ l_noret luaD_throw (lua_State *L, int errcode) { + } + } + ++#if defined(HAVE_INFINITE_RECURSION) ++#pragma GCC diagnostic pop ++#endif ++ + + int luaD_rawrunprotected (lua_State *L, Pfunc f, void *ud) { + unsigned short oldnCcalls = L->nCcalls; diff --git a/sys-fs/zfs-kmod/zfs-kmod-2.1.5.ebuild b/sys-fs/zfs-kmod/zfs-kmod-2.1.5.ebuild index 65567e49fef7..ac917091d0b4 100644 --- a/sys-fs/zfs-kmod/zfs-kmod-2.1.5.ebuild +++ b/sys-fs/zfs-kmod/zfs-kmod-2.1.5.ebuild @@ -62,6 +62,11 @@ RESTRICT="debug? ( strip ) test" DOCS=( AUTHORS COPYRIGHT META README.md ) +PATCHES=( + # bug #855182 + "${FILESDIR}"/${PV}-build-issues.patch +) + pkg_pretend() { use rootfs || return 0
[gentoo-commits] repo/gentoo:master commit in: sys-fs/zfs-kmod/files/, sys-fs/zfs-kmod/
commit: d63ee4d2e784fceca7406466a7085df61c48f5ba Author: Georgy Yakovlev gentoo org> AuthorDate: Tue Jun 7 18:44:53 2022 + Commit: Georgy Yakovlev gentoo org> CommitDate: Tue Jun 7 18:44:53 2022 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d63ee4d2 sys-fs/zfs-kmod: drop 0.8.6 Bug: https://bugs.gentoo.org/830020 Signed-off-by: Georgy Yakovlev gentoo.org> sys-fs/zfs-kmod/Manifest | 1 - sys-fs/zfs-kmod/files/0.8.6-copy-builtin.patch | 27 sys-fs/zfs-kmod/zfs-kmod-0.8.6.ebuild | 212 - 3 files changed, 240 deletions(-) diff --git a/sys-fs/zfs-kmod/Manifest b/sys-fs/zfs-kmod/Manifest index 737e23e8e6ef..fbb9a55c3dc1 100644 --- a/sys-fs/zfs-kmod/Manifest +++ b/sys-fs/zfs-kmod/Manifest @@ -1,4 +1,3 @@ -DIST zfs-0.8.6.tar.gz 9295260 BLAKE2B 45424d710aaf75a05f766ae523ae157a24b5cbdcefe72a59e4cede81e42f7a92ae7f01150388437b78cd49f3d28b9664599f2a624516e6b3f1073497194a99f2 SHA512 626b172554f39a5c70f6ea5c599a92fae52534590d1b0273de2bbfc3676d29dff0eade8ca17e5f179a59870c12bc758fb53b7900f8a1fdbdef3a9161b93f9cce DIST zfs-2.0.7.tar.gz 14550055 BLAKE2B 80f7297f04a21cd8f3f2043d895b0325512ba0cea3bb9223561237754495c8233d29af5a9418a3c06a87510100240a45ef3d59c7ce776fffb5aafdcd18167c21 SHA512 1135abf74bf74685439018f7cd65fc52088f179d113bdd2e6481689bb0f4a016716a07d859107b74501fda00689e80b2488c7c2c53d5f058d6b659909ed85f6f DIST zfs-2.0.7.tar.gz.asc 836 BLAKE2B 65e7df58c33ccadc4e0ca9dbc1e8c006abbec8442e2da50872a1ab0cbb841fc45152298e8d3b93ee4320ddae6416e3a856caf80d8efb21b19db53dfedbf00e38 SHA512 b901d8e92faa6cfe6010bd54de88c7d18057f434cb07f8a89672d6c446a0a97b23209ee8f02cfd3b2a8f431c68ec977e7dc9f95fe5d385dba0bb6d37338ba682 DIST zfs-2.1.2.tar.gz 34829045 BLAKE2B ab4e2d85200438373c7eeeaa5256a712dbfb2862b85de1fb7554ad0cc2b9f8e1255ab4564bca62f65a81a823adb8c112957e6e8771b8e5e6944c3731bc894584 SHA512 3e3932259da2a27f1c4cca8da62b909edc43bf51ab0229d2d5d0234d9a7eaa7b63b67c06a98cbe2d29ba1eb5cbcaab16e5062c2a2bc8e84cab770be10ebf2102 diff --git a/sys-fs/zfs-kmod/files/0.8.6-copy-builtin.patch b/sys-fs/zfs-kmod/files/0.8.6-copy-builtin.patch deleted file mode 100644 index 2b1ef8582546.. --- a/sys-fs/zfs-kmod/files/0.8.6-copy-builtin.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 0ce99b43b339226d62362f624d37f80a921eb197 Mon Sep 17 00:00:00 2001 -From: Georgy Yakovlev -Date: Fri, 18 Dec 2020 11:35:07 -0800 -Subject: [PATCH] copy-builtin: handle missing .gitignore - -acfc4944d0d6db114db9f2bb5401251c5bd767b6 broke copy-builtin in -release tarballs, because those do not contain .gitignore file. -Adding -f to rm call will make it return 0 even if file does not exist. - -Signed-off-by: Georgy Yakovlev - copy-builtin | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/copy-builtin b/copy-builtin -index 84f469fef02..6a6eb1f3695 100755 a/copy-builtin -+++ b/copy-builtin -@@ -36,7 +36,7 @@ rm -rf "$KERNEL_DIR/include/zfs" "$KERNEL_DIR/fs/zfs" - cp --recursive include "$KERNEL_DIR/include/zfs" - cp --recursive module "$KERNEL_DIR/fs/zfs" - cp zfs_config.h "$KERNEL_DIR/include/zfs/" --rm "$KERNEL_DIR/include/zfs/.gitignore" -+rm -f "$KERNEL_DIR/include/zfs/.gitignore" - - for MODULE in "${MODULES[@]}" - do diff --git a/sys-fs/zfs-kmod/zfs-kmod-0.8.6.ebuild b/sys-fs/zfs-kmod/zfs-kmod-0.8.6.ebuild deleted file mode 100644 index 49d364f92cc3.. --- a/sys-fs/zfs-kmod/zfs-kmod-0.8.6.ebuild +++ /dev/null @@ -1,212 +0,0 @@ -# Copyright 1999-2022 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -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} == "" ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/openzfs/zfs.git; -else - SRC_URI="https://github.com/openzfs/zfs/releases/download/zfs-${PV}/zfs-${PV}.tar.gz; - 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+ )" -SLOT="0/${PVR}" -IUSE="custom-cflags debug +rootfs" - -DEPEND="" - -RDEPEND="${DEPEND} - !sys-kernel/spl -" - -BDEPEND=" - dev-lang/perl - virtual/awk - dist-kernel? ( https://github.com/openzfs/zfs/pull/11371 -PATCHES=( "${FILESDIR}/${PV}-copy-builtin.patch" ) - -pkg_setup() { - CONFIG_CHECK=" - !DEBUG_LOCK_ALLOC - EFI_PARTITION - MODULES - !PAX_KERNEXEC_PLUGIN_METHOD_OR - !TRIM_UNUSED_KSYMS - ZLIB_DEFLATE - ZLIB_INFLATE - " - - use debug &&
[gentoo-commits] repo/gentoo:master commit in: sys-fs/zfs-kmod/files/, sys-fs/zfs-kmod/
commit: 3ac287680dc6014cf993afe44d99db03d0afa5ab Author: Sam James gentoo org> AuthorDate: Fri Apr 22 01:51:45 2022 + Commit: Sam James gentoo org> CommitDate: Fri Apr 22 01:54:53 2022 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3ac28768 sys-fs/zfs-kmod: backport upstream ZERO_RANGE fix Bug: https://github.com/openzfs/zfs/issues/13329 Signed-off-by: Sam James gentoo.org> sys-fs/zfs-kmod/files/2.1.4-ZERO_RANGE.patch | 304 +++ sys-fs/zfs-kmod/zfs-kmod-2.1.4-r1.ebuild | 209 ++ 2 files changed, 513 insertions(+) diff --git a/sys-fs/zfs-kmod/files/2.1.4-ZERO_RANGE.patch b/sys-fs/zfs-kmod/files/2.1.4-ZERO_RANGE.patch new file mode 100644 index ..338b14208dab --- /dev/null +++ b/sys-fs/zfs-kmod/files/2.1.4-ZERO_RANGE.patch @@ -0,0 +1,304 @@ +https://github.com/openzfs/zfs/commit/c220771a47e4206fb43e6849957657c9504b1b14 +https://github.com/openzfs/zfs/issues/13329 + +From c220771a47e4206fb43e6849957657c9504b1b14 Mon Sep 17 00:00:00 2001 +From: Rich Ercolani <214141+rincebr...@users.noreply.github.com> +Date: Wed, 20 Apr 2022 19:07:03 -0400 +Subject: [PATCH] Corrected oversight in ZERO_RANGE behavior + +It turns out, no, in fact, ZERO_RANGE and PUNCH_HOLE do +have differing semantics in some ways - in particular, +one requires KEEP_SIZE, and the other does not. + +Also added a zero-range test to catch this, corrected a flaw +that made the punch-hole test succeed vacuously, and a typo +in file_write. + +Reviewed-by: Brian Behlendorf +Signed-off-by: Rich Ercolani +Closes #13329 +Closes #13338 +--- a/module/os/linux/zfs/zpl_file.c b/module/os/linux/zfs/zpl_file.c +@@ -781,11 +781,13 @@ zpl_fallocate_common(struct inode *ip, int mode, loff_t offset, loff_t len) + if (mode & (test_mode)) { + flock64_t bf; + +- if (offset > olen) +- goto out_unmark; ++ if (mode & FALLOC_FL_KEEP_SIZE) { ++ if (offset > olen) ++ goto out_unmark; + +- if (offset + len > olen) +- len = olen - offset; ++ if (offset + len > olen) ++ len = olen - offset; ++ } + bf.l_type = F_WRLCK; + bf.l_whence = SEEK_SET; + bf.l_start = offset; +--- a/tests/runfiles/linux.run b/tests/runfiles/linux.run +@@ -94,7 +94,7 @@ tests = ['events_001_pos', 'events_002_pos', 'zed_rc_filter', 'zed_fd_spill'] + tags = ['functional', 'events'] + + [tests/functional/fallocate:Linux] +-tests = ['fallocate_prealloc'] ++tests = ['fallocate_prealloc', 'fallocate_zero-range'] + tags = ['functional', 'fallocate'] + + [tests/functional/fault:Linux] +--- a/tests/zfs-tests/cmd/file_write/file_write.c b/tests/zfs-tests/cmd/file_write/file_write.c +@@ -251,7 +251,7 @@ usage(char *prog) + "\t[-s offset] [-c write_count] [-d data]\n\n" + "Where [data] equal to zero causes chars " + "0->%d to be repeated throughout, or [data]\n" +- "equal to 'R' for psudorandom data.\n", ++ "equal to 'R' for pseudorandom data.\n", + prog, DATA_RANGE); + + exit(1); +--- a/tests/zfs-tests/include/libtest.shlib b/tests/zfs-tests/include/libtest.shlib +@@ -4236,6 +4236,22 @@ function punch_hole # offset length file + esac + } + ++function zero_range # offset length file ++{ ++ typeset offset=$1 ++ typeset length=$2 ++ typeset file=$3 ++ ++ case "$UNAME" in ++ Linux) ++ fallocate --zero-range --offset $offset --length $length "$file" ++ ;; ++ *) ++ false ++ ;; ++ esac ++} ++ + # + # Wait for the specified arcstat to reach non-zero quiescence. + # If echo is 1 echo the value after reaching quiescence, otherwise +--- a/tests/zfs-tests/tests/functional/fallocate/Makefile.am b/tests/zfs-tests/tests/functional/fallocate/Makefile.am +@@ -3,4 +3,5 @@ dist_pkgdata_SCRIPTS = \ + setup.ksh \ + cleanup.ksh \ + fallocate_prealloc.ksh \ +- fallocate_punch-hole.ksh ++ fallocate_punch-hole.ksh \ ++ fallocate_zero-range.ksh +--- a/tests/zfs-tests/tests/functional/fallocate/fallocate_punch-hole.ksh b/tests/zfs-tests/tests/functional/fallocate/fallocate_punch-hole.ksh +@@ -60,13 +60,17 @@ function cleanup + [[ -e $TESTDIR ]] && log_must rm -f $FILE + } + +-function check_disk_size ++function check_reported_size + { + typeset expected_size=$1 + +- disk_size=$(du $TESTDIR/file | awk '{print $1}') +- if [ $disk_size -ne $expected_size ]; then +- log_fail "Incorrect size: $disk_size != $expected_size" ++ if ! [ -e "${FILE}" ]; then ++ log_fail "$FILE does not exist" ++ fi ++ ++ reported_size=$(du "${FILE}" | awk '{print $1}') ++ if [ "$reported_size" !=
[gentoo-commits] repo/gentoo:master commit in: sys-fs/zfs-kmod/files/, sys-fs/zfs-kmod/
commit: 9fb275f656de639e25acc9497b70b4cae593d35d Author: Sam James gentoo org> AuthorDate: Mon Nov 8 06:07:13 2021 + Commit: Sam James gentoo org> CommitDate: Mon Nov 8 06:07:13 2021 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9fb275f6 sys-fs/zfs-kmod: yank SEEK_HOLE patch for now Preliminary investigation suggests this patch (and earlier iterations) may introduce regressions. Let's yank it for now while we continue the investigation with upstream. Bug: https://bugs.gentoo.org/815469 See: https://github.com/openzfs/zfs/issues/11900 Signed-off-by: Sam James gentoo.org> sys-fs/zfs-kmod/files/2.1.1-fix-lseek-mmap.patch | 594 - ...od-2.1.1-r1.ebuild => zfs-kmod-2.1.1-r2.ebuild} | 2 - 2 files changed, 596 deletions(-) diff --git a/sys-fs/zfs-kmod/files/2.1.1-fix-lseek-mmap.patch b/sys-fs/zfs-kmod/files/2.1.1-fix-lseek-mmap.patch deleted file mode 100644 index 2c3a66a97bf..000 --- a/sys-fs/zfs-kmod/files/2.1.1-fix-lseek-mmap.patch +++ /dev/null @@ -1,594 +0,0 @@ -From de198f2d9507b6dcf3d0d8f037ba33940208733e Mon Sep 17 00:00:00 2001 -From: Brian Behlendorf -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 -Reviewed-by: Tony Hutter -Reviewed-by: Rich Ercolani -Signed-off-by: Brian Behlendorf -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 - #include - #include -+#include -+#include - - 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); -+
[gentoo-commits] repo/gentoo:master commit in: sys-fs/zfs-kmod/files/, sys-fs/zfs-kmod/
commit: a19427b9ebd749036ac73d9165b53d9044027c1d Author: Georgy Yakovlev gentoo org> AuthorDate: Tue Nov 3 19:25:01 2020 + Commit: Georgy Yakovlev gentoo org> CommitDate: Tue Nov 3 20:04:11 2020 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a19427b9 sys-fs/zfs-kmod: drop 0.8.4 Package-Manager: Portage-3.0.9, Repoman-3.0.2 Signed-off-by: Georgy Yakovlev gentoo.org> sys-fs/zfs-kmod/Manifest | 1 - sys-fs/zfs-kmod/files/0.8.4-powerpc_jmp_weak.patch | 48 -- sys-fs/zfs-kmod/zfs-kmod-0.8.4-r1.ebuild | 183 - 3 files changed, 232 deletions(-) diff --git a/sys-fs/zfs-kmod/Manifest b/sys-fs/zfs-kmod/Manifest index 128c485727a..103e10fa8d8 100644 --- a/sys-fs/zfs-kmod/Manifest +++ b/sys-fs/zfs-kmod/Manifest @@ -1,3 +1,2 @@ -DIST zfs-0.8.4.tar.gz 9285838 BLAKE2B 776bcd6dfab8825c07d315085e288b29bf543d6957325d5d566b7b78c04505dde9bd25eb6684cb4a1b6a657de8a4e1290d04d2b9079d26d6b834a70f1ec3b569 SHA512 9086dc6a6262dd93ca6ec43f1b4c2e5c804deba708c8a7460b8531aa4802b0bf8cac0917a1a00e6af2e96d4a21cd68b85e226bf571bd94041d0325c457106eb1 DIST zfs-0.8.5.tar.gz 9196381 BLAKE2B 8376f360369c4657ff1fc040fb2bba780bbd5d6a98d149d2fa4ba39478588e213dbf6db218c7bd970839f015a69ae00ac951b90afc1c26b34aadf666b2976cab SHA512 3e6e70b76f7cc5b018adb78ce7c3009f88faf5b3da0a03170b03577cd84a2937b6056621c41fc819fd08bf59b28053caf8fec375cf375816a6786bb5646ed773 DIST zfs-2.0.0-rc4.tar.gz 12861762 BLAKE2B 638eb426955de38efbbb390cb02642298dd73caa5d9c9e28d8aea89bb40967c251bbbe66fbd38e08c922fb1c6fa935c959572abf237ea57ee7d9a5982693e275 SHA512 3972b92c7c0e92416fcde1fa01e7d1c20046de2e21d83a6694d0dc8753f13009b38f0f656202364da85b798886feffd06292b5fd5d23b0b3afc4f81fd86a540b diff --git a/sys-fs/zfs-kmod/files/0.8.4-powerpc_jmp_weak.patch b/sys-fs/zfs-kmod/files/0.8.4-powerpc_jmp_weak.patch deleted file mode 100644 index 1a2948a3158..000 --- a/sys-fs/zfs-kmod/files/0.8.4-powerpc_jmp_weak.patch +++ /dev/null @@ -1,48 +0,0 @@ -From bd0efd1f062bfba5dd2d6b1fe30b6949f8e0a8ef Mon Sep 17 00:00:00 2001 -From: sterlingjensen <776+sterlingjen...@users.noreply.github.com> -Date: Mon, 24 Aug 2020 22:41:05 -0500 -Subject: [PATCH] Mark lua setjmp/longjmp for powerpc weak - -Linux already defines setjmp/longjmp for powerpc, which leads to -duplicate symbols in a statically linked build. - -Signed-off-by: Sterlng Jensen - module/lua/setjmp/setjmp_ppc.S | 10 +- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/module/lua/setjmp/setjmp_ppc.S b/module/lua/setjmp/setjmp_ppc.S -index f787ef34913..72aa5d5ab5b 100644 a/module/lua/setjmp/setjmp_ppc.S -+++ b/module/lua/setjmp/setjmp_ppc.S -@@ -56,7 +56,7 @@ - #define ENTRY(name) \ - .align 2 ; \ - .type name,@function; \ -- .globl name; \ -+ .weak name; \ - name: - - #else /* PPC64_ELF_ABI_v1 */ -@@ -65,8 +65,8 @@ name: - #define GLUE(a,b) XGLUE(a,b) - #define ENTRY(name) \ - .align 2 ; \ -- .globl name; \ -- .globl GLUE(.,name); \ -+ .weak name; \ -+ .weak GLUE(.,name); \ - .pushsection ".opd","aw"; \ - name: \ - .quad GLUE(.,name); \ -@@ -83,8 +83,8 @@ GLUE(.,name): - #define ENTRY(name) \ - .text; \ - .p2align 4; \ -- .globl name; \ -- .type name,@function; \ -+ .weak name; \ -+ .type name,@function; \ - name: - - #endif /* __powerpc64__ */ diff --git a/sys-fs/zfs-kmod/zfs-kmod-0.8.4-r1.ebuild b/sys-fs/zfs-kmod/zfs-kmod-0.8.4-r1.ebuild deleted file mode 100644 index 18afe59c4a9..000 --- a/sys-fs/zfs-kmod/zfs-kmod-0.8.4-r1.ebuild +++ /dev/null @@ -1,183 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit autotools flag-o-matic linux-mod toolchain-funcs - -DESCRIPTION="Linux ZFS kernel module for sys-fs/zfs" -HOMEPAGE="https://github.com/openzfs/zfs; - -if [[ ${PV} == "" ]]; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/openzfs/zfs.git; -else - SRC_URI="https://github.com/openzfs/zfs/releases/download/zfs-${PV}/zfs-${PV}.tar.gz; - KEYWORDS="amd64 arm64 ppc64" - S="${WORKDIR}/zfs-${PV}" - ZFS_KERNEL_COMPAT="5.6" -fi - -LICENSE="CDDL debug? ( GPL-2+ )" -SLOT="0" -IUSE="custom-cflags debug +rootfs" - -DEPEND="" - -RDEPEND="${DEPEND} - !sys-kernel/spl -" - -BDEPEND=" - dev-lang/perl - virtual/awk -" - -RESTRICT="debug? ( strip ) test" - -DOCS=( AUTHORS COPYRIGHT META README.md ) - -PATCHES=( "${FILESDIR}/${PV}-powerpc_jmp_weak.patch" ) - -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 -
[gentoo-commits] repo/gentoo:master commit in: sys-fs/zfs-kmod/files/, sys-fs/zfs-kmod/
commit: 976dd88af1c35afbd35d0285aef61f7fc8376f6d Author: Georgy Yakovlev gentoo org> AuthorDate: Wed Aug 26 23:12:24 2020 + Commit: Georgy Yakovlev gentoo org> CommitDate: Wed Aug 26 23:34:44 2020 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=976dd88a sys-fs/zfs-kmod: apply znver build failure workaround Bug: https://bugs.gentoo.org/738270 Package-Manager: Portage-3.0.4, Repoman-3.0.1 Signed-off-by: Georgy Yakovlev gentoo.org> sys-fs/zfs-kmod/files/2.0.0_rc1-U__BMI__.patch | 29 ++ sys-fs/zfs-kmod/zfs-kmod-2.0.0_rc1.ebuild | 2 ++ 2 files changed, 31 insertions(+) diff --git a/sys-fs/zfs-kmod/files/2.0.0_rc1-U__BMI__.patch b/sys-fs/zfs-kmod/files/2.0.0_rc1-U__BMI__.patch new file mode 100644 index 000..9e9a007c300 --- /dev/null +++ b/sys-fs/zfs-kmod/files/2.0.0_rc1-U__BMI__.patch @@ -0,0 +1,29 @@ +From 81a3970fca5759499effc3131e59c9bd8f446cc9 Mon Sep 17 00:00:00 2001 +From: Georgy Yakovlev +Date: Wed, 26 Aug 2020 16:02:48 -0700 +Subject: [PATCH] module/zstd: pass -U__BMI__ + +Closes: https://github.com/openzfs/zfs/issues/10758 +Signed-off-by: Georgy Yakovlev +--- + module/zstd/Makefile.in | 4 + 1 file changed, 4 insertions(+) + +diff --git a/module/zstd/Makefile.in b/module/zstd/Makefile.in +index eea749ea8..bfceca920 100644 +--- a/module/zstd/Makefile.in b/module/zstd/Makefile.in +@@ -20,6 +20,10 @@ ccflags-y += -O3 + # Set it for other compilers, too. + $(obj)/lib/zstd.o: c_flags += -fno-tree-vectorize + ++# SSE register return with SSE disabled if -march=znverX is passed ++# https://github.com/openzfs/zfs/issues/10758 ++$(obj)/lib/zstd.o: c_flags += -U__BMI__ ++ + # Quiet warnings about frame size due to unused code in unmodified zstd lib + $(obj)/lib/zstd.o: c_flags += -Wframe-larger-than=20480 + +-- +2.28.0 + diff --git a/sys-fs/zfs-kmod/zfs-kmod-2.0.0_rc1.ebuild b/sys-fs/zfs-kmod/zfs-kmod-2.0.0_rc1.ebuild index e475ec25736..6acf1aa1679 100644 --- a/sys-fs/zfs-kmod/zfs-kmod-2.0.0_rc1.ebuild +++ b/sys-fs/zfs-kmod/zfs-kmod-2.0.0_rc1.ebuild @@ -38,6 +38,8 @@ RESTRICT="debug? ( strip ) test" DOCS=( AUTHORS COPYRIGHT META README.md ) +PATCHES=( "${FILESDIR}/${PV}-U__BMI__.patch" ) + pkg_setup() { CONFIG_CHECK=" !DEBUG_LOCK_ALLOC
[gentoo-commits] repo/gentoo:master commit in: sys-fs/zfs-kmod/files/, sys-fs/zfs-kmod/
commit: 2b66902c411859f19d0ee76b38efcd162d6b3f8f Author: Georgy Yakovlev gentoo org> AuthorDate: Fri Dec 13 23:41:16 2019 + Commit: Georgy Yakovlev gentoo org> CommitDate: Fri Dec 13 23:42:23 2019 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2b66902c sys-fs/zfs-kmod: revbump 0.8.2, fix O_TMPFILE umask ignore Bug: https://bugs.gentoo.org/686142 Package-Manager: Portage-2.3.79, Repoman-2.3.17 Signed-off-by: Georgy Yakovlev gentoo.org> sys-fs/zfs-kmod/files/0.8.2-umask_O_TMPFILE.patch | 34 ++ ...od-0.8.2-r1.ebuild => zfs-kmod-0.8.2-r2.ebuild} | 2 ++ 2 files changed, 36 insertions(+) diff --git a/sys-fs/zfs-kmod/files/0.8.2-umask_O_TMPFILE.patch b/sys-fs/zfs-kmod/files/0.8.2-umask_O_TMPFILE.patch new file mode 100644 index 000..9252b6e7815 --- /dev/null +++ b/sys-fs/zfs-kmod/files/0.8.2-umask_O_TMPFILE.patch @@ -0,0 +1,34 @@ +From ddb4e69db5eb0ed741dc4e32714af3e0f054086c Mon Sep 17 00:00:00 2001 +From: Tomohiro Kusumi +Date: Sat, 14 Dec 2019 08:02:23 +0900 +Subject: [PATCH] Don't fail to apply umask for O_TMPFILE files + +Apply umask to `mode` which will eventually be applied to inode. +This is needed since VFS doesn't apply umask for O_TMPFILE files. + +(Note that zpl_init_acl() applies `ip->i_mode &= ~current_umask();` +only when POSIX ACL is used.) + +Reviewed-by: Brian Behlendorf +Reviewed-by: Tony Hutter +Signed-off-by: Tomohiro Kusumi +Closes #8997 +Closes #8998 + +diff --git a/module/zfs/zpl_inode.c b/module/zfs/zpl_inode.c +index 264c5d2b1cf..e1c6ce7b705 100644 +--- a/module/zfs/zpl_inode.c b/module/zfs/zpl_inode.c +@@ -218,6 +218,12 @@ zpl_tmpfile(struct inode *dir, struct dentry *dentry, umode_t mode) + + crhold(cr); + vap = kmem_zalloc(sizeof (vattr_t), KM_SLEEP); ++ /* ++ * The VFS does not apply the umask, therefore it is applied here ++ * when POSIX ACLs are not enabled. ++ */ ++ if (!IS_POSIXACL(dir)) ++ mode &= ~current_umask(); + zpl_vap_init(vap, dir, mode, cr); + + cookie = spl_fstrans_mark(); diff --git a/sys-fs/zfs-kmod/zfs-kmod-0.8.2-r1.ebuild b/sys-fs/zfs-kmod/zfs-kmod-0.8.2-r2.ebuild similarity index 98% rename from sys-fs/zfs-kmod/zfs-kmod-0.8.2-r1.ebuild rename to sys-fs/zfs-kmod/zfs-kmod-0.8.2-r2.ebuild index 0df21c6da8c..961ee269f06 100644 --- a/sys-fs/zfs-kmod/zfs-kmod-0.8.2-r1.ebuild +++ b/sys-fs/zfs-kmod/zfs-kmod-0.8.2-r2.ebuild @@ -38,6 +38,8 @@ RESTRICT="debug? ( strip ) test" DOCS=( AUTHORS COPYRIGHT META README.md ) +PATCHES=( "${FILESDIR}/${PV}-umask_O_TMPFILE.patch" ) + pkg_setup() { linux-info_pkg_setup
[gentoo-commits] repo/gentoo:master commit in: sys-fs/zfs-kmod/files/, sys-fs/zfs-kmod/
commit: 92dbeb4238c0ff14f2ebb8fde4038ccb92bf0a44 Author: Georgy Yakovlev gentoo org> AuthorDate: Sun Jun 23 07:57:44 2019 + Commit: Georgy Yakovlev gentoo org> CommitDate: Sun Jun 23 08:00:28 2019 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=92dbeb42 sys-fs/zfs-kmod: drop 0.8.0-r1 Package-Manager: Portage-2.3.67, Repoman-2.3.15 Signed-off-by: Georgy Yakovlev gentoo.org> sys-fs/zfs-kmod/Manifest | 1 - 0_Fix_integer_overflow_in_get_next_chunk.patch | 32 .../zfs-kmod/files/0.8.0_revert_Report_holes.patch | 53 -- sys-fs/zfs-kmod/zfs-kmod-0.8.0-r1.ebuild | 178 - 4 files changed, 264 deletions(-) diff --git a/sys-fs/zfs-kmod/Manifest b/sys-fs/zfs-kmod/Manifest index 90cf193e838..29e419297f2 100644 --- a/sys-fs/zfs-kmod/Manifest +++ b/sys-fs/zfs-kmod/Manifest @@ -1,4 +1,3 @@ DIST zfs-0.6.5.11.tar.gz 2521959 BLAKE2B 95b145a26620995343df1a468367b882bc71ab3e4812c05839d49d0cd877b756185c91b2609986f91939fbfda322809ddefc8ff9207fe076db03e0038e585ea2 SHA512 877052da2a0cdc78b10cb5041da55e31242db2618c502997f4df9aa46a14482c7f33adce8d21aaf16164a9fe52edc358922ea89c8e109c3247e107bf607d6451 DIST zfs-0.7.13.tar.gz 6614047 BLAKE2B c59c46287715779eb04d69333b0a417fa9865eb0d61c642b043188c4c97d4eed369f76a48327326ed1d4dd608ff95d91d20d26c80ed0b120a8fcd5f83cea638f SHA512 457d8f110b68c9656194cd3738b216d5d807d680e5cfc6ed1f3cf5ebde67860476387c6b862ba3ba7f972d8945075963e6c325543ab84468e3eff5dbce68476e -DIST zfs-0.8.0.tar.gz 9084737 BLAKE2B c3095ca07b7c36fa204274be1166fd244894de70b97a11da32606b08e9bb150bc1326ac8424d5c001eb33d2d94e214d3944ddfce885844885c55291a82f11a2f SHA512 ba29f1644ec6807f4cad574e4950e56026316c3d405c9fc40a63ab34c2400d508521b09f656ac97898e5feaca5e0b259d9d4d85f75a4b1782a9db13d3b14cdc6 DIST zfs-0.8.1.tar.gz 8668360 BLAKE2B f18268656381c20af6bd18421636a1c56633c7eafaf91b1308d15508d5f4bdcfa5dfbb4e09d0302ac3de9d6a4f69718fe9c3d083ed5b3ab2a32c6fb7a1db624b SHA512 1fb3957f65dbe94edaffcedb5b2694390dc14e472c11f7e63184a9ea6a774e79a43d47a2d789b7ced233fc67c76583bf7d5c1bda0692bb07929673e2a57f4667 diff --git a/sys-fs/zfs-kmod/files/0.8.0_Fix_integer_overflow_in_get_next_chunk.patch b/sys-fs/zfs-kmod/files/0.8.0_Fix_integer_overflow_in_get_next_chunk.patch deleted file mode 100644 index 0042bfdc99c..000 --- a/sys-fs/zfs-kmod/files/0.8.0_Fix_integer_overflow_in_get_next_chunk.patch +++ /dev/null @@ -1,32 +0,0 @@ -From ec4afd27f198d93a7bd32a05cb288708ba754ada Mon Sep 17 00:00:00 2001 -From: madz -Date: Wed, 29 May 2019 19:17:25 +0200 -Subject: [PATCH] Fix integer overflow in get_next_chunk() - -dn->dn_datablksz type is uint32_t and need to be casted to uint64_t -to avoid an overflow when the record size is greater than 4 MiB. - -Reviewed-by: Tom Caputi -Reviewed-by: Brian Behlendorf -Signed-off-by: Olivier Mazouffre -Closes #8778 -Closes #8797 - module/zfs/dmu.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/module/zfs/dmu.c b/module/zfs/dmu.c -index 1697a632078..a283b062238 100644 a/module/zfs/dmu.c -+++ b/module/zfs/dmu.c -@@ -719,8 +719,8 @@ get_next_chunk(dnode_t *dn, uint64_t *start, uint64_t minimum, uint64_t *l1blks) - uint64_t blks; - uint64_t maxblks = DMU_MAX_ACCESS >> (dn->dn_indblkshift + 1); - /* bytes of data covered by a level-1 indirect block */ -- uint64_t iblkrange = -- dn->dn_datablksz * EPB(dn->dn_indblkshift, SPA_BLKPTRSHIFT); -+ uint64_t iblkrange = (uint64_t)dn->dn_datablksz * -+ EPB(dn->dn_indblkshift, SPA_BLKPTRSHIFT); - - ASSERT3U(minimum, <=, *start); - diff --git a/sys-fs/zfs-kmod/files/0.8.0_revert_Report_holes.patch b/sys-fs/zfs-kmod/files/0.8.0_revert_Report_holes.patch deleted file mode 100644 index f8d67ccc7ce..000 --- a/sys-fs/zfs-kmod/files/0.8.0_revert_Report_holes.patch +++ /dev/null @@ -1,53 +0,0 @@ -From: Georgy Yakovlev -Date: Wed, 29 May 2019 14:38:15 -0700 -Subject: Revert [PATCH] Report holes when there are only metadata changes - -This reverts ec4f9b8f30391a3fb46c8d4a31c2dc9250dca1bb -Issue: https://github.com/zfsonlinux/zfs/issues/8816 -Bug: https://bugs.gentoo.org/635002 b/module/zfs/dmu.c -+++ a/module/zfs/dmu.c -@@ -2366,39 +2366,14 @@ - return (err); - - /* -+ * Check if dnode is dirty -- * Check if there are dirty data blocks or frees which have not been -- * synced. Dirty spill and bonus blocks which are external to the -- * object can ignored when reporting holes. -*/ -- mutex_enter(>dn_mtx); - for (i = 0; i < TXG_SIZE; i++) { - if (multilist_link_active(>dn_dirty_link[i])) { -+ clean = B_FALSE; -+ break; -- -- if (dn->dn_free_ranges[i] != NULL) { -- clean = B_FALSE; -- break; -- } -- --
[gentoo-commits] repo/gentoo:master commit in: sys-fs/zfs-kmod/files/, sys-fs/zfs-kmod/
commit: ac86e2dd8e23d43b6814954cc262840171b3e192 Author: Georgy Yakovlev gentoo org> AuthorDate: Fri Apr 26 20:27:11 2019 + Commit: Georgy Yakovlev gentoo org> CommitDate: Fri Apr 26 21:09:40 2019 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ac86e2dd sys-fs/zfs-kmod: drop old Package-Manager: Portage-2.3.65, Repoman-2.3.12 Signed-off-by: Georgy Yakovlev gentoo.org> sys-fs/zfs-kmod/Manifest | 4 - .../files/zfs-kmod-0.7.12-kernel-4.20-compat.patch | 31 - sys-fs/zfs-kmod/zfs-kmod-0.7.11.ebuild | 146 --- sys-fs/zfs-kmod/zfs-kmod-0.7.12-r1.ebuild | 148 sys-fs/zfs-kmod/zfs-kmod-0.7.8.ebuild | 146 --- sys-fs/zfs-kmod/zfs-kmod-0.7.9-r1.ebuild | 155 - sys-fs/zfs-kmod/zfs-kmod-0.7.9.ebuild | 146 --- 7 files changed, 776 deletions(-) diff --git a/sys-fs/zfs-kmod/Manifest b/sys-fs/zfs-kmod/Manifest index 27a9625015d..7d8b4df3603 100644 --- a/sys-fs/zfs-kmod/Manifest +++ b/sys-fs/zfs-kmod/Manifest @@ -1,8 +1,4 @@ DIST zfs-0.6.5.11.tar.gz 2521959 BLAKE2B 95b145a26620995343df1a468367b882bc71ab3e4812c05839d49d0cd877b756185c91b2609986f91939fbfda322809ddefc8ff9207fe076db03e0038e585ea2 SHA512 877052da2a0cdc78b10cb5041da55e31242db2618c502997f4df9aa46a14482c7f33adce8d21aaf16164a9fe52edc358922ea89c8e109c3247e107bf607d6451 -DIST zfs-0.7.11.tar.gz 6561125 BLAKE2B ee579aa01272d5565fe78ae6074dc1acdd34c8e9a26838462aea937132c322b0fb915c4dadec230560d586db2b2af129735ed6b5e41def4183c9c7ed456ca7aa SHA512 b53c92de2c2542a1b0189368e4b298e93bea13aec8ba415559e86bfc01a9c7deaf436e694aa047ef8a302c79224f96edd150ea93a57eb88c9e26d054cf7ccd2b DIST zfs-0.7.12.tar.gz 6565017 BLAKE2B 493df30ecce1f169e02d6c8262ba71cc9e7b01d5b17ce188004f522f0c93943b858434067cba8173ccb3e08cde24a1d3e8a3996b2e852f8bc35251f8c4ab3809 SHA512 278e411eac5fb2a91108671b64521c2bd5c08024d5829e1679d8f243dfc3c6317363ed9c79dabfddecf425acb6b3003eeaf4e7d991513cbcae4d2644f5d30bf2 DIST zfs-0.7.13.tar.gz 6614047 BLAKE2B c59c46287715779eb04d69333b0a417fa9865eb0d61c642b043188c4c97d4eed369f76a48327326ed1d4dd608ff95d91d20d26c80ed0b120a8fcd5f83cea638f SHA512 457d8f110b68c9656194cd3738b216d5d807d680e5cfc6ed1f3cf5ebde67860476387c6b862ba3ba7f972d8945075963e6c325543ab84468e3eff5dbce68476e -DIST zfs-0.7.8.tar.gz 6514969 BLAKE2B 689d96ad7afeb422cbeca724f248ac56b6fcdc0a7ef215f735180406a7fc0d4d3c9700a41e855186d8044b304c9f0c142c2bdca387299c499974e424965970a4 SHA512 cdeabe10acd2feeeff8a6362987c757b716bfea6ebad42ce022a081106661f774150c113bdaa9e1ac441efdd6da4cf11e6119323ad60ae15ab445a872d952e35 -DIST zfs-0.7.9-r1-patches.tar.xz 10920 BLAKE2B 50a0b8533061b5eecc103179e6fd51499d87f1c3b331b0629efa29a5a7d405c03448db2245fed9389d149cc83021a2c263bc2f02133a5fdd11b088516c353fff SHA512 a9e8c04bf7449b0a63420202b2f6dd8a6aea96ac57e5925c2ca0223f662210f42316ada25aa6113103909de8c9976945828cdb91a6ff9932f282c01316d7b3ec -DIST zfs-0.7.9.tar.gz 6548649 BLAKE2B aa2f1b9d0ba0eda1af7d420c43d65d5d4183169cfe97c693356e1e0b15967ea512c25454f2d77285600f2209d778e4299f420754932e403a390b87b4f488dc94 SHA512 af5d9c320885ee84019fb04250c4b12c7ac3bb3d1037b1961ec4584701a737558374dc22521743e197356efb1d1f0ced9beff675ae9cfcccf3cd8407467f18fa DIST zfs-0.8.0-rc4.tar.gz 8874029 BLAKE2B 17dd408bfe519548c124529b22312c70f527cca9329a7198c415ee2010e03a967d06d6b56ba25c667c8586476daed97c812ffc26331827aac818eda27282 SHA512 0a1137cf5ed2859dd3876867c4f63b74f117847276a3d9de67736a92cbe5a0c9b2e599bb0e84664f5feb89be36188baacdcc2aa233b498fcfeb6fd946c8b73ea diff --git a/sys-fs/zfs-kmod/files/zfs-kmod-0.7.12-kernel-4.20-compat.patch b/sys-fs/zfs-kmod/files/zfs-kmod-0.7.12-kernel-4.20-compat.patch deleted file mode 100644 index 75ed3c57992..000 --- a/sys-fs/zfs-kmod/files/zfs-kmod-0.7.12-kernel-4.20-compat.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 4f981f6ab614a908f912f7dc147b248f96b498a2 Mon Sep 17 00:00:00 2001 -From: satmandu -Date: Wed, 26 Dec 2018 12:36:28 -0500 -Subject: [PATCH] Additional fixes for current_kernel_time in 4.20 on 0.7.x - -While https://github.com/zfsonlinux/spl/commit/cd1b28e0cfa923db988611df28958f7b84b53530 fixed the 4.20 current_kernel_time issues in spl as per https://github.com/zfsonlinux/zfs/pull/8074 in .07.x, current_kernel_time is still being used inside zpios-ctl.h in 0.7.x. - -I believe this may fix this issue in 0.7.x to allow it to compile successfully for kernel 4.2.0. - include/zpios-ctl.h | 7 +-- - 1 file changed, 5 insertions(+), 2 deletions(-) - -diff --git a/include/zpios-ctl.h b/include/zpios-ctl.h -index f17f1153260..068c9eaf173 100644 a/include/zpios-ctl.h -+++ b/include/zpios-ctl.h -@@ -181,9 +181,12 @@ zpios_timespec_t - zpios_timespec_now(void) - { - zpios_timespec_t zts_now; -- struct timespec ts_now; -+ #if defined(HAVE_INODE_TIMESPEC64_TIMES) -+ inode_timespec_t ts_now = current_kernel_time64();
[gentoo-commits] repo/gentoo:master commit in: sys-fs/zfs-kmod/files/, sys-fs/zfs-kmod/
commit: 88f9fdae57b9424aabdf32ecca18718681983f33 Author: Georgy Yakovlev gentoo org> AuthorDate: Tue Jan 8 20:00:53 2019 + Commit: Georgy Yakovlev gentoo org> CommitDate: Wed Jan 9 06:27:59 2019 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=88f9fdae sys-fs/zfs-kmod: 0.7.12 linux-4.20 compatible backport of current_kernel_time64() fix from 0.7.13-tbr Package-Manager: Portage-2.3.54, Repoman-2.3.12 Signed-off-by: Georgy Yakovlev gentoo.org> .../files/zfs-kmod-0.7.12-kernel-4.20-compat.patch | 31 + sys-fs/zfs-kmod/zfs-kmod-0.7.12-r1.ebuild | 148 + 2 files changed, 179 insertions(+) diff --git a/sys-fs/zfs-kmod/files/zfs-kmod-0.7.12-kernel-4.20-compat.patch b/sys-fs/zfs-kmod/files/zfs-kmod-0.7.12-kernel-4.20-compat.patch new file mode 100644 index 000..75ed3c57992 --- /dev/null +++ b/sys-fs/zfs-kmod/files/zfs-kmod-0.7.12-kernel-4.20-compat.patch @@ -0,0 +1,31 @@ +From 4f981f6ab614a908f912f7dc147b248f96b498a2 Mon Sep 17 00:00:00 2001 +From: satmandu +Date: Wed, 26 Dec 2018 12:36:28 -0500 +Subject: [PATCH] Additional fixes for current_kernel_time in 4.20 on 0.7.x + +While https://github.com/zfsonlinux/spl/commit/cd1b28e0cfa923db988611df28958f7b84b53530 fixed the 4.20 current_kernel_time issues in spl as per https://github.com/zfsonlinux/zfs/pull/8074 in .07.x, current_kernel_time is still being used inside zpios-ctl.h in 0.7.x. + +I believe this may fix this issue in 0.7.x to allow it to compile successfully for kernel 4.2.0. +--- + include/zpios-ctl.h | 7 +-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/include/zpios-ctl.h b/include/zpios-ctl.h +index f17f1153260..068c9eaf173 100644 +--- a/include/zpios-ctl.h b/include/zpios-ctl.h +@@ -181,9 +181,12 @@ zpios_timespec_t + zpios_timespec_now(void) + { + zpios_timespec_t zts_now; +- struct timespec ts_now; ++ #if defined(HAVE_INODE_TIMESPEC64_TIMES) ++ inode_timespec_t ts_now = current_kernel_time64(); ++ #else ++ inode_timespec_t ts_now = current_kernel_time(); ++ #endif + +- ts_now = current_kernel_time(); + zts_now.ts_sec = ts_now.tv_sec; + zts_now.ts_nsec = ts_now.tv_nsec; + diff --git a/sys-fs/zfs-kmod/zfs-kmod-0.7.12-r1.ebuild b/sys-fs/zfs-kmod/zfs-kmod-0.7.12-r1.ebuild new file mode 100644 index 000..ad9bf31d87c --- /dev/null +++ b/sys-fs/zfs-kmod/zfs-kmod-0.7.12-r1.ebuild @@ -0,0 +1,148 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="5" + +if [ ${PV} == "" ]; then + AUTOTOOLS_AUTORECONF="1" + EGIT_REPO_URI="https://github.com/zfsonlinux/zfs.git; + inherit git-r3 +else + SRC_URI="https://github.com/zfsonlinux/zfs/releases/download/zfs-${PV}/zfs-${PV}.tar.gz; + S="${WORKDIR}/zfs-${PV}" + KEYWORDS="~amd64" +fi + +inherit flag-o-matic linux-info linux-mod toolchain-funcs autotools-utils + +DESCRIPTION="Linux ZFS kernel module for sys-fs/zfs" +HOMEPAGE="https://zfsonlinux.org/; + +LICENSE="CDDL debug? ( GPL-2+ )" +SLOT="0" +IUSE="custom-cflags debug +rootfs" +RESTRICT="debug? ( strip ) test" + +DEPEND=" + =sys-kernel/spl-${PV}* + dev-lang/perl + virtual/awk +" + +RDEPEND="${DEPEND} + !sys-fs/zfs-fuse +" + +AT_M4DIR="config" +AUTOTOOLS_IN_SOURCE_BUILD="1" + +DOCS=( AUTHORS COPYRIGHT DISCLAIMER README.markdown ) + +PATCHES=( "${FILESDIR}/${P}-kernel-4.20-compat.patch" ) + +pkg_setup() { + linux-info_pkg_setup + CONFIG_CHECK=" + !DEBUG_LOCK_ALLOC + EFI_PARTITION + IOSCHED_NOOP + 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 ge 2 6 32 || die "Linux 2.6.32 or newer required" + + [ ${PV} != "" ] && \ + { kernel_is le 4 20 || die "Linux 4.20 is the latest supported version."; } + + check_extra_config +} + +src_prepare() { + # Remove GPLv2-licensed ZPIOS unless we are debugging + use debug || sed -e 's/^subdir-m += zpios$//' -i "${S}/module/Makefile.in" + + # Set module revision number + [ ${PV} != "" ] && \ + { sed -i "s/\(Release:\)\(.*\)1/\1\2${PR}-gentoo/" "${S}/META" || die "Could not set Gentoo release"; } + + autotools-utils_src_prepare +} + +src_configure() { + local SPL_PATH="$(basename $(echo "${EROOT}usr/src/spl-"*))" + use custom-cflags || strip-flags + filter-ldflags -Wl,* + + set_arch_to_kernel +
[gentoo-commits] repo/gentoo:master commit in: sys-fs/zfs-kmod/files/, sys-fs/zfs-kmod/
commit: 5b9bf722d0344854d45636b94f9efca672d846f8 Author: Richard Yao gentoo org> AuthorDate: Fri Sep 18 12:46:58 2015 + Commit: Richard Yao gentoo org> CommitDate: Fri Sep 18 12:50:21 2015 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5b9bf722 sys-fs/zfs-kmod-0.6.5-r1: Fix discard corruption regression This is the first data corruption bug in the history of the ZoL project and I regret to say that it is my fault. I wrote the patch that caused it and it went into HEAD after passing upstream review. It affects Linux 2.6.36 and later. Package-Manager: portage-2.2.20.1 Signed-off-by: Richard Yao gentoo.org> .../files/zfs-kmod-0.6.5-discard-on-zvol-fix.patch | 31 + sys-fs/zfs-kmod/zfs-kmod-0.6.5-r1.ebuild | 154 + 2 files changed, 185 insertions(+) diff --git a/sys-fs/zfs-kmod/files/zfs-kmod-0.6.5-discard-on-zvol-fix.patch b/sys-fs/zfs-kmod/files/zfs-kmod-0.6.5-discard-on-zvol-fix.patch new file mode 100644 index 000..632d08d --- /dev/null +++ b/sys-fs/zfs-kmod/files/zfs-kmod-0.6.5-discard-on-zvol-fix.patch @@ -0,0 +1,31 @@ +From 96165264ad0afe7a5d440ef49f9712a188486266 Mon Sep 17 00:00:00 2001 +From: Richard Yao+Date: Fri, 18 Sep 2015 08:32:52 -0400 +Subject: [PATCH] Discard on zvols should not exceed the length of a block + +37f9dac592bf5889c3efb305c48ac39b4c7dd140 replaced the end-start +calculation with a cached value, but neglected to update it on discard +operations. This can cause us to discard data not requested, causing +data loss on zvols. + +Reported-by: Richard Connon +Signed-off-by: Richard Yao +--- + module/zfs/zvol.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/module/zfs/zvol.c b/module/zfs/zvol.c +index 492f8ff..c5a8071 100644 +--- a/module/zfs/zvol.c b/module/zfs/zvol.c +@@ -661,6 +661,7 @@ zvol_discard(struct bio *bio) + if (!(bio->bi_rw & REQ_SECURE)) { + start = P2ROUNDUP(start, zv->zv_volblocksize); + end = P2ALIGN(end, zv->zv_volblocksize); ++ size = end - start; + } + #endif + +-- +2.4.6 + diff --git a/sys-fs/zfs-kmod/zfs-kmod-0.6.5-r1.ebuild b/sys-fs/zfs-kmod/zfs-kmod-0.6.5-r1.ebuild new file mode 100644 index 000..0e3665f --- /dev/null +++ b/sys-fs/zfs-kmod/zfs-kmod-0.6.5-r1.ebuild @@ -0,0 +1,154 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="4" + +AT_M4DIR="config" +AUTOTOOLS_AUTORECONF="1" +AUTOTOOLS_IN_SOURCE_BUILD="1" + +inherit flag-o-matic linux-info linux-mod toolchain-funcs autotools-utils + +if [ ${PV} == "" ] ; then + inherit git-2 + EGIT_REPO_URI="https://github.com/zfsonlinux/zfs.git; +else + inherit eutils versionator + SRC_URI="https://github.com/zfsonlinux/zfs/archive/zfs-${PV}.tar.gz; + S="${WORKDIR}/zfs-zfs-${PV}" + KEYWORDS="~amd64 ~arm ~ppc ~ppc64" +fi + +DESCRIPTION="Linux ZFS kernel module for sys-fs/zfs" +HOMEPAGE="http://zfsonlinux.org/; + +LICENSE="CDDL debug? ( GPL-2+ )" +SLOT="0" +IUSE="custom-cflags debug +rootfs" +RESTRICT="debug? ( strip ) test" + +DEPEND=" + =sys-kernel/spl-${PV}* + dev-lang/perl + virtual/awk +" + +RDEPEND="${DEPEND} + !sys-fs/zfs-fuse +" + +pkg_setup() { + linux-info_pkg_setup + CONFIG_CHECK="!DEBUG_LOCK_ALLOC + BLK_DEV_LOOP + EFI_PARTITION + IOSCHED_NOOP + MODULES + !PAX_KERNEXEC_PLUGIN_METHOD_OR + !PAX_USERCOPY_SLABS + 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 ge 2 6 32 || die "Linux 2.6.32 or newer required" + + [ ${PV} != "" ] && \ + { kernel_is le 4 2 || die "Linux 4.2 is the latest supported version."; } + + check_extra_config +} + +src_prepare() { + if [ ${PV} != "" ] + then + # Fix zvol data loss regression + # https://github.com/zfsonlinux/zfs/pull/3798 + epatch "${FILESDIR}/${P}-discard-on-zvol-fix.patch" + fi + + # Remove GPLv2-licensed ZPIOS unless we are debugging + use debug || sed -e 's/^subdir-m += zpios$//' -i "${S}/module/Makefile.in" + + # Set module revision number + [ ${PV} != "" ] && \ + { sed -i "s/\(Release:\)\(.*\)1/\1\2${PR}-gentoo/" "${S}/META" || die "Could not set Gentoo release"; } + + autotools-utils_src_prepare +} + +src_configure() { + local SPL_PATH="$(basename $(echo "${EROOT}usr/src/spl-"*))" + use custom-cflags || strip-flags +