From ec772b86dc6a0fffd39a359459173f5fdeb9fc8a Mon Sep 17 00:00:00 2001 From: Nathaniel Clark Date: Mon, 20 Apr 2015 11:01:43 -0400 Subject: [PATCH] LU-6477 build: Update SPL/ZFS to 0.6.4.1 Version 0.6.4 Relase Notes https://github.com/zfsonlinux/zfs/releases/tag/zfs-0.6.4 New Functionality * Compatible with kernels up to Linux 4.0. * New feature flags (additional details below): spacemap_histogram extensible_dataset bookmarks enabled_txg hole_birth embedded_data * New asynchronous I/O (AIO) support. * New fallocate() FALLOC_FL_PUNCH_HOLE support. * New fragmentation metric in 'zpool list'. * New LZ4 compression of meta data. * New "redundant_metadata" property controls desired redundancy level. * New "overlay" property controls behavior for non-empty mount points. * New 'zpool list -v' shows individual disk capacity. * New 'zpool get -H' (scripted mode) support. * New 'zpool create -t' creates a pool with a temporary name. * New arc_summary.py script from FreeNAS. * New bash completion support. * New DTRACE_PROBES integrated with Linux tracepoints. * New compressed block histograms with zdb. * New verbatim pool imports with zdb. New Feature Flags * spacemap_histogram This features allows ZFS to maintain more information about how free space is organized within the pool. If this feature is enabled, ZFS will set this feature to active when a new space map object is created or an existing space map is upgraded to the new format. * extensible_dataset This feature allows more flexible use of internal ZFS data structures, and exists for other features to depend on. This feature will be active when the first dependent feature uses it. * bookmarks This feature enables use of the zfs bookmark subcommand. Bookmarks mark the point in time when a snapshot was created, they can be used as the incremental source for a zfs send command. All bookmarks in the pool can be listed by running zfs list -t bookmark -r poolname. * enabled_txg Once this feature is enabled ZFS records the transaction group number in which new features are enabled. This has no user-visible impact, but other features may depend on this feature. * hole_birth This feature improves performance of incremental sends ("zfs send -i") and receives for objects with many holes. The most common case of hole-filled objects is zvols. * embedded_data This feature improves the performance and compression ratio of highly-compressible blocks. Blocks whose contents can compress to 112 bytes or smaller can take advantage of this feature. Bug Fixes Fixed I/O error on fs/vol delete corrupting space map. Fixed corruption during spacemap reallocation. Fixed corruption due to faulty logic when undirtying spill block. Fixed stale bonus buffer in recycled dnode_t data corruption. Fixed SA header size accounting. Fixed O_APPEND flag for open(2). Fixed deadlocks caused by direct reclaim by setting PF_FSTRANS. Fixed deadlocks on suspended pools. Fixed deadlock in zio pipeline caused by mutex_exit() race. Fixed deadlock between 'zpool export' and 'zfs list'. Fixed deadlock related to 'zfs rename'. Fixed deadlock related to z_teardown_inactive_lock. Fixed deadlock related to zfs_putpage(). Fixed deadlock for meta data intensive workloads. Fixed panic when removing log device. Fixed panic in metaslab init when space_map_open returned ENXIO. Fixed panic due to dirtying inodes in a snapshot. Fixed panic in dbufstat.py. Fixed panic when performing ACL-to-mode translation on empty ACL. Fixed SEEK_HOLE misreporting hole at end of file. Fixed discrepancies in futimens() timestamps. Fixed pool free space leak. Fixed L2ARC compressed buffer leak. Fixed 'zpool history -i' hang. Fixed 'zpool import -t' it should not update the cache file. Fixed multiple 'zfs send/recv' failure modes. Fixed dracut to export ZFS root pool on shutdown. Fixed restore_object now performed in a single transaction. Fixed zvol symbolic link handling. Fixed per-filesystem memory reclaim. Fixed removal of SA in sa_modify_attrs(). Fixed readdir for .zfs/snapshot directory. Fixed maximum zvol transfer size. Fixed dmu_sync'ed holes should retain birth time. Fixed ctor/dtor called on each alloc/free not once per slab. Fixed ZED io-spare.sh script. Fixed spurious timeouts when create large pools. Improved 'zpool add' dry-run mode. Improved 'zfs send -p' to only send properties for sent snapshots. Improved 'zpool import' hostid behavior. Improved 'zpool import -XF' behavior. Improved 'zpool import' when multiple duplicate labels are found. Improved 'zfs receive' performance by increasing pipe buffer size. Improved 'zfs send' for small blocks by increasing prefetch. Improved SPL kmem implementation. Improved zvol_get_stats() performance. Improved ashift auto-detect and management. Improved documentation in man pages. Improved handling of damaged block pointers. Improved ZED logging Rate limited debug backtraces to avoid impacting performance. Assorted performance improvements. Substantial changes to realign code base with illumos. Over 200 additional bug fixes. Version 0.6.4.1 Relase Notes https://github.com/zfsonlinux/zfs/releases/tag/zfs-0.6.4.1 Bug Fixes: Fixed io-spare.sh script for ZED. Fixed multiple deadlocks which might occur when reclaiming memory. Fixed excessive CPU usage for meta data heavy workloads when reclaiming the ARC. Signed-off-by: Nathaniel Clark Change-Id: Ifebb473ba5508cc9a105a5dd08a6598bbda17db3 Reviewed-on: http://review.whamcloud.com/14505 Tested-by: Jenkins Reviewed-by: Isaac Huang Tested-by: Maloo Reviewed-by: Alex Zhuravlev Reviewed-by: Oleg Drokin --- contrib/lbuild/lbuild | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contrib/lbuild/lbuild b/contrib/lbuild/lbuild index 186118b..06e08e1 100755 --- a/contrib/lbuild/lbuild +++ b/contrib/lbuild/lbuild @@ -1047,7 +1047,7 @@ build_spl_zfs() { # The spl/zfs spec files expect RPM_BUILD_ROOT to point to the root of the # destination for the rpms export RPM_BUILD_ROOT=$TOPDIR - SPLZFSVER=${SPLZFSVER:-0.6.3-1.2} + SPLZFSVER=${SPLZFSVER:-0.6.4.1} SPLZFSTAG=${SPLZFSTAG:-} # The files expect a kver to be set to the kernel version . -- 1.8.3.1