diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2019-06-02 21:45:28 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2019-06-02 21:45:28 +0100 |
commit | 2018227e9344edb9da15fc6a4a8298086cc2aa77 (patch) | |
tree | c18e1c09e605e94e2a1e93345ad25746cc9e14b9 /sys-fs/zfs-kmod | |
parent | 6f8038813c460b4f0572d5ef595cdfa94af3a94d (diff) |
gentoo resync : 02.06.2019
Diffstat (limited to 'sys-fs/zfs-kmod')
-rw-r--r-- | sys-fs/zfs-kmod/Manifest | 6 | ||||
-rw-r--r-- | sys-fs/zfs-kmod/files/0.8.0_Fix_integer_overflow_in_get_next_chunk.patch | 32 | ||||
-rw-r--r-- | sys-fs/zfs-kmod/files/0.8.0_revert_Report_holes.patch | 53 | ||||
-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 } |