summaryrefslogtreecommitdiff
path: root/sys-fs/zfs-kmod
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2019-06-02 21:45:28 +0100
committerV3n3RiX <venerix@redcorelinux.org>2019-06-02 21:45:28 +0100
commit2018227e9344edb9da15fc6a4a8298086cc2aa77 (patch)
treec18e1c09e605e94e2a1e93345ad25746cc9e14b9 /sys-fs/zfs-kmod
parent6f8038813c460b4f0572d5ef595cdfa94af3a94d (diff)
gentoo resync : 02.06.2019
Diffstat (limited to 'sys-fs/zfs-kmod')
-rw-r--r--sys-fs/zfs-kmod/Manifest6
-rw-r--r--sys-fs/zfs-kmod/files/0.8.0_Fix_integer_overflow_in_get_next_chunk.patch32
-rw-r--r--sys-fs/zfs-kmod/files/0.8.0_revert_Report_holes.patch53
-rw-r--r--sys-fs/zfs-kmod/zfs-kmod-0.8.0-r1.ebuild (renamed from sys-fs/zfs-kmod/zfs-kmod-0.8.0_rc5.ebuild)26
4 files changed, 106 insertions, 11 deletions
diff --git a/sys-fs/zfs-kmod/Manifest b/sys-fs/zfs-kmod/Manifest
index 645fb4a3066e..587a484cb1c9 100644
--- a/sys-fs/zfs-kmod/Manifest
+++ b/sys-fs/zfs-kmod/Manifest
@@ -1,11 +1,13 @@
+AUX 0.8.0_Fix_integer_overflow_in_get_next_chunk.patch 1223 BLAKE2B d2286ad668d7ee1a80dfc01972cb33d12a189087100dd8f52814fd31475f40624501d0a4e026c8eb2acffac9ccbbca941c0d2edd7b32138f6c2b5682e5d32074 SHA512 89126799f50da5482b13c0b23bf156f06341970d201e19022fe9b067ab955100b91f2775928349f97a03d6d078b3d2ac1f83cd456e172bee8bd2642e9f74a86b
+AUX 0.8.0_revert_Report_holes.patch 1344 BLAKE2B 1dfab8f711a821932b213060c8f327406901fa86c5fcab3fc75f7f61d753d506fa75f99b62c3284a2baaa6d3a4efe093db19eed94783aed964b08cd4ed1b757d SHA512 d529fbbbae351cf45dce263ae342aaa5a37f3ce742292b387c39dc0ed378c7ab8d1bb1e302f355adae62ea48074f4bcac14071378e1d365fd4141dd51fff3d41
DIST zfs-0.6.5.11.tar.gz 2521959 BLAKE2B 95b145a26620995343df1a468367b882bc71ab3e4812c05839d49d0cd877b756185c91b2609986f91939fbfda322809ddefc8ff9207fe076db03e0038e585ea2 SHA512 877052da2a0cdc78b10cb5041da55e31242db2618c502997f4df9aa46a14482c7f33adce8d21aaf16164a9fe52edc358922ea89c8e109c3247e107bf607d6451
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.8.0-rc5.tar.gz 8994022 BLAKE2B f29b9f6d264bbd04553f6855fbdf039808903eb02989e06082d9db8494723e611736db753fa4d27443527fbac189c1ee282ac89fdf799f6182ae428e178d0d10 SHA512 e54a3f9c7947baf619d737a832a545609bc03774a53f9a65147b8c23d9fb5148400a33d99216205a3e45821f8300108882c4eab9995778611775035441428551
+DIST zfs-0.8.0.tar.gz 9084737 BLAKE2B c3095ca07b7c36fa204274be1166fd244894de70b97a11da32606b08e9bb150bc1326ac8424d5c001eb33d2d94e214d3944ddfce885844885c55291a82f11a2f SHA512 ba29f1644ec6807f4cad574e4950e56026316c3d405c9fc40a63ab34c2400d508521b09f656ac97898e5feaca5e0b259d9d4d85f75a4b1782a9db13d3b14cdc6
EBUILD zfs-kmod-0.6.5.11.ebuild 4086 BLAKE2B 77042a670913df7a0fbb47e594028d56f6733827192b68ae13b0c52598bf728550b59ef0c850d1498e265765552ba3e6f1e4ea6dd8d8608af3fb994de375135b SHA512 efbc887b8f613a94af230916dd0c6ddbf9fcf29a73d4bfeda19680eb514ad12f75cc75d45f8d01fa56cf909e34e518ec5a91bf70310370dd3cc7db7ab7aa72ef
EBUILD zfs-kmod-0.7.12.ebuild 4072 BLAKE2B bd174bbce39a1634c40ba20c26066e15c660b18382f6c2c7ada46759fa19339e39e2490e209f319cf80041151c074aaeb86c456441fdf814e46a6a3a37c2316f SHA512 1a52bec71a66de3cb79ab32e68b95ae6a0590a8acb715e4a025516840d8a21252e524a25044897661c2977217a6ec7bbc6da1e60846dcf414f97324bbc564ee2
EBUILD zfs-kmod-0.7.13.ebuild 4119 BLAKE2B f8d921251bc94644a7331762054935518bb9fb68425b404572876466bff118b9ae20cf297f34d9267c933d7ea28840c84fe8e4a867e9a9f191b627f29207798b SHA512 8e4eb43e5b4edd7dcb8b0ecb13a809340ee20247017e7cb141b8489dc4c9988b84b40e866028e8d3b73aea69981a923e4fc4b237389115fb8e72d8b6ed450340
EBUILD zfs-kmod-0.7.9999.ebuild 4131 BLAKE2B 10f0553102967537d42f5b2da8ede7c8894ca9134a1421efadd1db538b3381d588fe6729dc37c84ab025212ca01a74c2e60768fe8f7808acbd21f0179b2a9abb SHA512 ad59815b9e2ce844e6caa5232d1e4f17c70b930b8295a28e44f37b8293c602fb8b98f939bb1ea22cef68c8e724de6a581b09073d41fd7a14aa181a0cadb6250c
-EBUILD zfs-kmod-0.8.0_rc5.ebuild 4292 BLAKE2B bb740f7b6eda3a3f2c12dbe672436a50b407d5363d6244eb5d0d507ebe7f4f02fab6fe4da0954955572d9afa55b7be39de6b56d225b5a4be35da004e46591503 SHA512 d1cd8ed3be7ff20b25927fc417038deea66ab283ce69c4782d64822787d0a17a57c70cec6f9577387959098f32aa962e2ccd1c9cb3c10ad977adefcb1847ba5e
+EBUILD zfs-kmod-0.8.0-r1.ebuild 4455 BLAKE2B a46c12e4547b5ad0564cd43fd63af6f646ab21f4cb7ec581a09c3c91bef6901321f10b92c4048de072ed6a3bdfcb36827c2189a04e63f86a4e9243adddb457ee SHA512 9ad94fff5362229432c5d817dfea53a9e17311d7caa7e6b6966de906b1020e393d841ffc277ec4a40d7e9b4a961c80bcfd8a5467557a6a5f69db61d9b2952421
EBUILD zfs-kmod-9999.ebuild 4328 BLAKE2B b7304dd03f2a189b434837b337a8ae7a46b4b3b823880542bd4751496bd2f63e0976652402266552e822b073a8ea262b8bbbf03ef79a15c0b56da8e840aab63e SHA512 30c91bb159521bfa37b7bed7cf4c25c0415b9f302fbf0aaad6494a1039d1928fd6e8c154ab461ffbe911d53b8f2c60da13bbdba8656cae691149a1f84354d56e
MISC metadata.xml 551 BLAKE2B c8dc35c8f884d3f5d8720ad838c34ae5be7dc3b3cc63ab7713330a5611bca2829942eeb640b7e00ef285af9b52dd2d134cd793a20baeecff2af56f6b60116e21 SHA512 1cfd4a6a6ec4a120c8e02d3dde831b1f73294a06b798388ff8d4e761ef986e625a56fa980f8d412fab082630f58932116cf795bc5e5728c6485dd9ad54e22a7a
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
new file mode 100644
index 000000000000..0042bfdc99c4
--- /dev/null
+++ b/sys-fs/zfs-kmod/files/0.8.0_Fix_integer_overflow_in_get_next_chunk.patch
@@ -0,0 +1,32 @@
+From ec4afd27f198d93a7bd32a05cb288708ba754ada Mon Sep 17 00:00:00 2001
+From: madz <olivier.mazouffre@ims-bordeaux.fr>
+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 <tcaputi@datto.com>
+Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
+Signed-off-by: Olivier Mazouffre <olivier.mazouffre@ims-bordeaux.fr>
+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
new file mode 100644
index 000000000000..f8d67ccc7cef
--- /dev/null
+++ b/sys-fs/zfs-kmod/files/0.8.0_revert_Report_holes.patch
@@ -0,0 +1,53 @@
+From: Georgy Yakovlev <gyakovlev@gentoo.org>
+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->dn_mtx);
+ for (i = 0; i < TXG_SIZE; i++) {
+ if (multilist_link_active(&dn->dn_dirty_link[i])) {
++ clean = B_FALSE;
++ break;
+-
+- if (dn->dn_free_ranges[i] != NULL) {
+- clean = B_FALSE;
+- break;
+- }
+-
+- list_t *list = &dn->dn_dirty_records[i];
+- dbuf_dirty_record_t *dr;
+-
+- for (dr = list_head(list); dr != NULL;
+- dr = list_next(list, dr)) {
+- dmu_buf_impl_t *db = dr->dr_dbuf;
+-
+- if (db->db_blkid == DMU_SPILL_BLKID ||
+- db->db_blkid == DMU_BONUS_BLKID)
+- continue;
+-
+- clean = B_FALSE;
+- break;
+- }
+ }
+-
+- if (clean == B_FALSE)
+- break;
+ }
+- mutex_exit(&dn->dn_mtx);
+
+ /*
+ * If compatibility option is on, sync any current changes before
diff --git a/sys-fs/zfs-kmod/zfs-kmod-0.8.0_rc5.ebuild b/sys-fs/zfs-kmod/zfs-kmod-0.8.0-r1.ebuild
index 9474ad475580..0108a7a9b3b7 100644
--- a/sys-fs/zfs-kmod/zfs-kmod-0.8.0_rc5.ebuild
+++ b/sys-fs/zfs-kmod/zfs-kmod-0.8.0-r1.ebuild
@@ -12,10 +12,9 @@ if [[ ${PV} == "9999" ]]; then
inherit autotools git-r3
EGIT_REPO_URI="https://github.com/zfsonlinux/zfs.git"
else
- MY_PV="${PV/_rc/-rc}"
- SRC_URI="https://github.com/zfsonlinux/zfs/releases/download/zfs-${MY_PV}/zfs-${MY_PV}.tar.gz"
+ SRC_URI="https://github.com/zfsonlinux/zfs/releases/download/zfs-${PV}/zfs-${PV}.tar.gz"
KEYWORDS="~amd64"
- S="${WORKDIR}/zfs-${PV%_rc*}"
+ S="${WORKDIR}/zfs-${PV}"
ZFS_KERNEL_COMPAT="5.1"
fi
@@ -39,6 +38,11 @@ RESTRICT="debug? ( strip ) test"
DOCS=( AUTHORS COPYRIGHT META README.md )
+PATCHES=(
+ "${FILESDIR}"/0.8.0_revert_Report_holes.patch
+ "${FILESDIR}"/0.8.0_Fix_integer_overflow_in_get_next_chunk.patch
+)
+
pkg_setup() {
linux-info_pkg_setup
@@ -117,17 +121,21 @@ src_configure() {
src_compile() {
set_arch_to_kernel
- default
+ myemakeargs=( V=1 )
+
+ emake "${myemakeargs[@]}"
}
src_install() {
set_arch_to_kernel
- emake \
- DEPMOD="/bin/true" \
- DESTDIR="${D}" \
- INSTALL_MOD_PATH="${INSTALL_MOD_PATH:-$EROOT}" \
- install
+ myemakeargs+=(
+ DEPMOD="/bin/true"
+ DESTDIR="${D}"
+ INSTALL_MOD_PATH="${INSTALL_MOD_PATH:-$EROOT}"
+ )
+
+ emake "${myemakeargs[@]}" install
einstalldocs
}