Releases: openzfs/zfs
zfs-0.7.2
Supported Kernels
- Compatible with 2.6.32 - 4.13 Linux kernels.
Bug Fixes
- Correct cppcheck errors #6662 #6653
- Increase default arc_c_min #6659
- Export symbol dmu_tx_mark_netfree() #6660
- ZTS fix slog_replay_volume.ksh failure #6654
- Linux 4.14 compat: IO acct, global_page_state, etc #6655 #6635
- Modifying XATTRs doesnt change the ctime #3644 #6586
- Fix volume WR_INDIRECT log replay #6620 #6603
- Improved dnode allocation and dmu_hold_impl() #6611 #6611
- Linux 4.8+ compatibility fix for vm stats #6528
- Disable mount(8) canonical paths in do_mount() #1791 #6429 #6437
- Fix range locking in ZIL commit codepath #6238 #6315 #6356 #6477
- Fix remounting snapshots read-write #6510 #6515
- Fix ZTS grow_pool/setup #6499 #6516
- vdev_id: implement slot numbering by port id #6484
- Fix NULL pointer when O_SYNC read in snapshot #6478 #6494
- zio_dva_throttle_done() should allow zinjected ZIO #6383 #6384
- Man page fixes #6492
- Crash in dbuf_evict_one with DTRACE_PROBE #6463
- Tag zfs-0.7.1- Fix dnode allocation race #6414
zfs-0.7.1
Supported Kernels
- Compatible with 2.6.32 - 4.12 Linux kernels.
Bug Fixes
- Fix dnode allocation race #6414 #6439
- Add debug log entries for failed receive records #6465
- dracut: Install commands required for vdev_id #6443 #6452
- Only record zio->io_delay on reads and writes #6425 #6440
- mmp_on_uberblocks: Use kstat for uberblock counts #6407 #6419
- Fix volmode=none property behavior at import time #6426
- Fix aarch64 build #6424
- Disable zfs_send_007_pos #6422
- Correct man page generation #6409 #6411
- Add assert under lock to detect cases of dispach of a preallocated #609
- Remove misguided HAVE_MUTEX_OWNER check, take 2 #639 #632
- spl-mutex: fix race in mutex_exit zfsonlinux/zfszfsonlinux/zfs#6401 #637
- Add __divmoddi4 and __udivmoddi4 for 32-bit arch #6417 #636
- Fix aarch64 build #635
zfs-0.7.0
New Features
-
Resumable
zfs send/receive
- Allow an interruptedzfs receive
to be resumed if the stream was prematurely terminated (e.g. due to remote system or network failure). -
Compressed
zfs send/receive
- Use thezfs send -c
option to directly send the compressed data in the ARC or on-disk to another pool without needing to decompress it. -
Multiple Import Protection - Prevents a shared pool in a fail-over configuration from being imported on different hosts at the same time. When the multihost pool property is on, perform an activity check prior to importing the pool to verify it is not in use.
-
Customized
zpool iostat|status
columns - Additional columns can be added to thezpool iostat
andzpool status
output to show more information. Several useful scripts are provided which can report drive temperature, SMART data, enclosure LED status, and more. Administrators and users can add additional scripts to meet their needs. -
Latency and request size histograms - Use the
zpool iostat -l
option to show on-the-fly latency stats andzpool iostat -w
to generate a histogram showing the total latency of each IO. Thezpool iostat -r
option can be used to show the size of each IO. These statistics are available per-disk to aid in finding misbehaving devices. -
Scrub Pause - The
zpool scrub -p
option can be used to pause/resume an active scrub without having to cancel it. -
Delegations - The
zfs allow
andzfs unallow
subcommands can be used to delegate ZFS administrative permissions for the file systems to non-privileged users. -
Large dnodes - This feature improves metadata performance allowing extended attributes, ACLs, and symbolic links with long target names to be stored in the dnode. This benefits workloads such as SELinux, distributed filesystems like Lustre and Ceph, and any application which makes use of extended attributes.
-
User/group object accounting and quota - This feature adds per-object user/group accounting and quota limits to the existing space accounting and quota functionality. The
zfs userspace
andzfs groupspace
subcommands have been extended to set quota limits and report on object usage. -
Cryptographic checksums - Stronger SHA-512, Skein, or Edon-R checksums are available.
-
JBOD Management
- Automatic drive online - Newly detected devices which are determined to be part of an imported pool are automatically brought online.
- Automatic drive replacement - When the autoreplace pool property is on, any new device found in the same physical location as a device that previously belonged to the pool, is automatically formatted and replaced.
- Automatic hot spares - When a device is faulted start a rebuild to a hot-spare device if available.
- Fault LEDs - Set the fault LED for a device when it's faulted, clear it when it has been replaced.
- Drive health monitoring - Automatically fault a device when an excessive number of read, write, or checksum errors are detected.
- Force fault - Use
zpool offline -f
to proactively fault a problematic device. - Multipath aware - Can be used with advanced multipath configurations.
Performance
- ARC Buffer Data (ABD) - Allocates ARC data buffers using scatter lists of pages instead of virtual memory. This approach minimizes fragmentation on the system allowing for a more efficient use of memory. The reduced demand for virtual memory also improves stability and performance on 32-bit architectures.
- Compressed ARC - Cached file data is compressed by default in memory and uncompressed on demand. This allows for an larger effective cache which improves overall performance.
- Vectorized RAIDZ - Hardware optimized RAIDZ which reduces CPU usage.
Supported SIMD instructions: sse2, ssse3, avx2, avx512f, and avx512bw, neon, neonx2 - Vectorized checksums - Hardware optimized Fletcher-4 checksums which reduce CPU usage.
Supported SIMD instructions: sse2, ssse3, avx2, avx512f, neon - GZIP compression offloading - Hardware optimized GZIP compression offloading with QAT accelerator.
- Metadata performance - Overall improved metadata performance. Optimizations include a multi-threaded allocator, batched quota updates, improved prefetching, and streamlined call paths.
- Faster RAIDZ resilver - When resilvering RAIDZ intelligently skips sections of the device which don't need to be rebuilt.
Changes in Behavior
- Non-privileged users are allowed to run
zpool list
,zpool iostat
,zpool status
,zpool get
,zfs list
, andzfs get
. These commands no longer need to be added to the/etc/sudoers
file. - The permissions of the
/dev/zfs
device have changed from0600
to0666
to let ZFS do access control in kernel space and makezfs allow
andzfs unallow
work properly. If you have been changing permissions / group owner of the device file yourself your change won't work correctly anymore and breaks proper behavior ofzfs allow
. From this release forward you should be able to satisfy your use-case with the officially supportedzfs allow
command. - By default task queues are now dynamic and worker threads will be created and destroyed as needed. This allows the system to automatically tune itself to ensure the optimal number of threads are used for the active workload which can result in a performance improvement.
- Accessing snapshots over NFS now requires the
crossmnt
option be added to the/etc/exports
file. Thenfsd
service is now aware that snapshots are different filesystems. A result of this change is that older distributions, like CentOS 6.x, can no longer provide access to snapshots over NFS.
Supported Kernels
- Compatible with 2.6.32 - 4.12 Linux kernels.
Module Options
- The default values for the module options were selected to yield good performance for the majority of workloads and configurations. They should not need to be tuned for most systems but are available for performance analysis and tuning. See the
zfs-module-parameters(5)
man page for a more complete description of the options and what they control. - Added:
- dbuf_cache_hiwater_pct - Percent over
dbuf_cache_max_bytes
when dbufs must be evicted - dbuf_cache_lowater_pct - Percent below
dbuf_cache_max_bytes
when dbufs stop being evicted - dbuf_cache_max_bytes - Maximum size in bytes of the dbuf cache
- dbuf_cache_max_shift - Cap the size of the dbuf cache to a log2 fraction of arc size
- dmu_object_alloc_chunk_shift - CPU-specific allocator grabs 2^N objects at once
- send_holes_without_birth_time - Ignore hole_birth txg for zfs send
- zfetch_max_distance - Max bytes to prefetch per stream
- zfs_abd_scatter_enabled - Toggle whether ABD allocations must be linear
- zfs_abd_scatter_max_order - Maximum order allocation used for a scatter ABD
- zfs_arc_dnode_limit - Minimum bytes of dnodes in ARC
- zfs_arc_dnode_limit_percent - Percent of ARC meta buffers for dnodes
- zfs_arc_dnode_reduce_percent - Percentage of excess dnodes to try to unpin
- zfs_arc_meta_limit_percent - Percent of arc size for arc meta limit
- zfs_arc_pc_percent - Percent of pagecache to reclaim ARC to
- zfs_compressed_arc_enabled - Disable compressed arc buffers
- zfs_deadman_checktime_ms - Dead I/O check interval in milliseconds
- zfs_delete_blocks - Delete files larger than N blocks asynchronously
- zfs_dmu_offset_next_sync - Enable forcing txg sync to find holes
- zfs_free_bpobj_enabled - Enable processing of the free_bpobj
- zfs_metaslab_segment_weight_enabled - Enable segment-based metaslab selection
- zfs_metaslab_switch_threshold - Metaslab selection max buckets before switching
- zfs_multihost_fail_intervals - Max allowed period without a successful mmp write
- zfs_multihost_history - Historical statistics for last N multihost writes
- zfs_multihost_import_intervals - Number of zfs_multihost_interval periods to wait for activity
- zfs_multihost_interval - Milliseconds between mmp writes to each leaf
- zfs_multilist_num_sublists - Number of sublists used in each multilist
- zfs_per_txg_dirty_frees_percent - Percentage of dirtied blocks from frees in one TXG
- zfs_sync_taskq_batch_pct - Percentage of CPUs to run an IO worker thread
- zfs_vdev_mirror_non_rotating_inc - Non-rotating media load increment for non-seeking I/O's
- zfs_vdev_mirror_non_rotating_seek_inc - Non-rotating media load increment for seeking I/O's
- zfs_vdev_mirror_rotating_inc - Rotating media load increment for non-seeking I/O's
- zfs_vdev_mirror_rotating_seek_inc - Rotating media load increment for seeking I/O's
- zfs_vdev_mirror_rotating_seek_offset - Offset in bytes from the last I/O to trigger seek increment
- zfs_vdev_queue_depth_pct - Queue depth percentage for each top-level vdev
- zfs_vdev_raidz_impl - Select RAIDZ implementation.
- zil_slog_bulk - Limit in bytes slog sync writes per commit
- zio_dva_throttle_enabled - Throttle block allocations in the ZIO pipeline
- zvol_request_sync - Synchronously handle bio requests
- zvol_threads - Max number of threads to handle I/O requests
- zvol_volmode - Default volmode property value
- spl_max_show_tasks - Max number of tasks shown in taskq proc
- spl_panic_halt - Cause kernel panic on assertion failures
- dbuf_cache_hiwater_pct - Percent over
- Removed:
- l2arc_nocompress - Skip compressing L2ARC buffers
- zfetch_block_cap - Max number of blocks to fetch at a time
- zfs_arc_num_sublists_per_state - Number of sublists used in each of the ARC state lists
- zfs_disable_dup_eviction - Disable duplicate buff...
v0.7.0-rc5
Supported Kernels
- Compatible with 2.6.32 - 4.12 Linux kernels.
New Features
- Added
createtxg
andguid
native pool properties. - Added property overriding
-o|-x
tozfs receive
. - Added
zpool offline -f
option to force fault a device. - Added
zpool sync
command to force a transaction group sync. - Added support to
zpool iostat/status -c
for user provided scripts. - Added
zpool scrub -p
to pause/resume an active scrub. - Added
volmode
property from FreeBSD to control volume visibility. - Added
multihost
pool property which prevents a fail-over configuration
from importing a shared pool on different hosts at the same time.
Performance
- Skip unnecessary resilver IOs for raidz pools.
- Faster multi-threaded object allocation.
Bug Fixes
- Fixed
zpool scrub
thinking it repaired offline device. - Fixed
snapdev
property inheritance behavior. - Fixed unneeded writes when bpobj has no entries.
- Fixed volume deadlock by refining the locking.
- Fixed hang when using volumes on single core systems.
- Fixed
zpool import
finding wrong spare/l2cache when path changes. - Fixed incorrect warning when raidz and mirror pools do have similar redundancy.
- Fixed memory leak in
zpool event
handling. - Fixed memory leak in
zvol_set_volsize()
. - Fixed ida leak in
zvol_create_minor_impl()
. - Fixed file handle leak in
dir_is_empty_readdir()
. - Fixed missing
arc_free_cksum()
call inarc_release()
. - Fixed mount error message when using kernels without
nbmand
support. - Fixed inaccurate
zfs send
size estimate for some volumes. - Fixed L2ARC for devices which don't support 512b access.
- Fixed L2ARC writing beyond target size.
- Fixed panic when setting
zfs_vdev_aggregation_limit=16777216
. - Fixed panic in bookmark deletion.
- Fixed panic in
zfs create
. - Fixed panic when running
zpool clear
on a readonly pool. - Fixed several minor LZ4 issues.
- Fixed
zinject(8)
to allow a fractional percentage of errors to be injected. - Fixed setting
arc_meta_limit
andarc_dnode_limit
on change. - Fixed large dnode send stream flag conflict with upstream.
- Fixed stack usage in
dsl_dir_tempreserve_impl()
. - Fixed gcc 7.1.1 build warnings.
- Fixed glibc-2.23 compatibility warnings.
- Fixed Clang build warnings.
- Fixed Musl libc build warnings.
- Fixed Linux kernel compatibility issues.
- Fixed need for
--with-linux-obj
option when specifying--with-linux
toconfigure
. - Fixed
.deb
dependency warnings. - Fixed
test-runner
to return non-zero exit code on failure. - Fixed and enabled additional ZFS Test Suite tests.
- Applied 29 upstream OpenZFS patches.
- Applied upstream
mdoc(7)
formatting forzpool(8)
andzfs(8)
man pages. - Assorted documentation and man page updates.
This tag is the final rc prior to the release of 0.7.0.
v0.6.5.11
Supported Kernels
- Compatible with 2.6.32 - 4.12-rc3 Linux kernels.
Bug Fixes
- Linux 4.12 compat: super_setup_bdi_name() - add missing code #6089 #6324
- Musl libc fixes #6310
- Increase zfs_vdev_async_write_min_active to 2 #5926
- Fix int overflow in zbookmark_is_before()- Fix RHEL 7.4 bio_set_op_attrs build error #6234 #6271
- Fix RHEL 7.4 bio_set_op_attrs build error #6253
- GCC 7.1 fixes #6253
- Remove complicated libspl assert wrappers #4449
- Compatibilty with glibc-2.23 #6132
- glibc 2.5 compat: use correct header for makedev() et al. #5945
- Fix RWSEM_SPINLOCK_IS_RAW check failed #622
v0.6.5.10
Supported Kernels
- Compatible with 2.6.32 - 4.12-rc3 Linux kernels.
Performance
- OpenZFS 8005 - poor performance of 1MB writes on certain RAID-Z configurations #5931
Bug Fixes
- Add MS_MANDLOCK mount failure message #4729 #6199
- Fix import wrong spare/l2 device when path change #6158
- Fix import finding spare/l2cache when path changes #6158
- Linux 4.9 compat: fix zfs_ctldir xattr handling #6189
- Linux 4.12 compat: fix super_setup_bdi_name() call #6147
- Linux 4.12 compat: CURRENT_TIME removed #6114
- Linux 4.12 compat: super_setup_bdi_name() #6089
- Limit zfs_dirty_data_max_max to 4G #6072 #6081
- OpenZFS 8166 - zpool scrub thinks it repaired offline device #5806 #6103
- vdev_id: fix failure due to multipath -l bug #6039
- Guarantee PAGESIZE alignment for large zio buffers #6084
- Fix harmless "BARRIER is deprecated" kernel warning on Centos 6.8 #5739 #5828
- Add kmap_atomic in dmu_bio_copy- zdb: segfault in dump_bpobj_subobjs() #3905
- Fix atomic_sub_64() i386 assembly implementation #5671 #5717
- Fix loop device becomes read-only #5776 #5855
- Allow ZVOL bookmarks to be listed recursively #4503 #5072
- Fix zfs-mount.service failure on boot #5719
- Fix iput() calls within a tx #5758
- Fix off by one in zpl_lookup #5768
- Linux 4.11 compat: iops.getattr and friends #5875
- Linux 4.11 compat: avoid refcount_t name conflict #5823 #5842
- Linux 4.12 compat: PF_FSTRANS was removed openzfs/spl#614
- Clear PF_FSTRANS over spl_filp_fallocate() zfsonlinux/splzfsonlinux/zfs#4529
- glibc 2.25 compat: remove assert(X=Y) openzfs/spl#610
- Linux 4.11 compat: remove stub for __put_task_struct openzfs/spl#608
- Linux 4.11 compat: add linux/sched/signal.h openzfs/spl#608
- Linux 4.11 compat: vfs_getattr() takes 4 args openzfs/spl#608
- Fix powerpc build openzfs/spl#607
- Linux 4.11 compat: set_task_state() removed openzfs/spl#603
v0.7.0-rc4
Supported Kernels
- Compatible with 2.6.32 - 4.11 Linux kernels.
New Features
- Added script support to
zpool iostat -c
extended output - Added
feature@multi_vdev_crash_dump
compatibility - Added GZIP compression offloading with QAT accelerator
Performance
- Fixed performance of 1MB writes on certain RAID-Z configurations (OpenZFS 8005)
- Fixed
lseek(SEEK_HOLE)
performance for dirty files - Fixed large file delete can starving out write ops (OpenZFS 6569)
- Improved ARC memory reclaim behavior
- Improved asynchronous ZVOL performance
- Allow higher ashift values (up to 16)
- Multi-threaded spa_sync() (OpenZFS 7968)
- Increased
zfs_vdev_async_write_min_active
(to 2) which can speed up rebuilds - Increased indirect block size (OpenZFS 7104)
Bug Fixes
- Fixed immediately update label 2,3 uberblocks when vdev expands
- Fixed human-readable sizes in command line utilities
- Fixed page size alignment for large buffers
- Fixed
zfs_dirty_data_max_max
limit (4G) - Fixed incorrect compressed send streams
- Fixed
zdb -e
regression for active cacheless pools - Fixed
vdev_id
failure due tomultipath -l
bug - Fixed leak in
send_iterate_fs()
- Fixed large block/gzip/raidz boot pools allowed
- Fixed ZVOL BLKFLSBUF ioctl invalidates cache
- Fixed block device cache invalidation during
zpool import|labelclear
- Fixed header inclusions for standards conformance
- Fixed size inflation in
spa_get_worst_case_asize
- Fixed panic destroying a metaslab deferred range tree (OpenZFS 8023)
- Fixed
zpool create
accepts raidz and mirrors with similar redundancy - Fixed
zpool list
reporting 16.0e for expandsz (OpenZFS 7885) - Fixed check ashift validity in
zpool add
- Fixed wrong offset args in
vdev_cache_write()
- Fixed 'zdb -o' segmentation fault
- Fixed
zfs_znode_alloc()
failure inzfs_mknode()
with retry - Fixed race in rollback, zil close, and zil flush (OpenZFS 3821)
- Fixed
zpool status -v
error message - Fixed NFS snapdir automounting
- Fixed harmless "BARRIER is deprecated" kernel warning on Centos 6.8
- Fixed ARC space accounting leak (OpenZFS 7867)
- Fixed loop device becoming read-only for Linux kernel older than 4.1
- Fixed
dsl_dataset_rollback_sync()
may try to free already free blocks (OpenZFS 7199) - Fixed off by one in zpl_lookup
- Fixed enclosure LED handling
- Fixed
zfs receive
of deduplicated streams - Fixed
zfs get
behavior with bookmarks (OpenZFS 7386) - Added
zdb(8)
lookup files by path (OpenZFS 6410) - Added
zdb(8)
only dump unique configurations and uberblocks - Added
zdb -G
to print zfs_dbgmsg's - Added
zdb -ll
to print the nvlist payload stats - Added constrained paths to the ZFS Test Suite (OpenZFS 7290)
- Added test framework for the ZED to the ZFS Test Suite (auto-online, auto-replace)
- Added new test cases and enabled additional existing test cases in the ZFS Test Suite
- Added debug and console logs dumping to the ZFS Test Suite
- Allow c99 when building ZFS in the kernel tree
- Applied 106 upstream OpenZFS patches
- Assorted documentation and man page updates
This tag is provided for evaluation and testing of the upcoming 0.7.0 release.
v0.6.5.9
Supported Kernels
- Compatible with 2.6.32 - 4.10 Linux kernels.
Bug Fixes
- Linux 4.10 compat: BIO flag changes #5499
- Linux 4.9 compat: inode_change_ok() renamed setattr_prepare() #5307
- Linux 4.9 compat: remove iops->{set,get,remove}xattr #5307
- Linux 4.9 compat: iops->rename() wants flags #5307
- Linux 4.9 compat: file_operations->aio_fsync removal #5393
- Linux 4.9 compat: Remove dir inode operations from zpl_inode_operations #5307
- Linux 4.9 compat: group_info changes openzfs/spl#581
- Linux 4.8 compat: Fix RW_READ_HELD #5233
- Linux 4.7 compat: Fix deadlock during lookup on case-insensitive #5124 #5141 #5147 #5148
- Linux 3.14 compat: assign inode->set_acl #5371 #5375
- Linux 2.6.32 compat: Reorder HAVE_BIO_RW_* checks #4951 #4959
- Use large stacks when available #4059
- Use set_cached_acl() and forget_cached_acl() when possible #5378
- Use kernel slab for vn_cache and vn_file_cache openzfs/spl#599
- Fix batch free zpl_posix_acl_release #5340 #5353
- Fix zfsctl_snapshot_{,un}mount() issues #5250
- Fix systemd services configutation through preset file #5356
- Fix RLIMIT_FSIZE enforcement #5587 #5673 #5720 #5726
- Fix leak on zfs_sb_create() failure #5490 #5496
- Fix zpl_fallocate_common() creak leak #5244 #5330
- Fix fchange in zpl_ioctl_setflags() #5486
- Fix wrong operator in xvattr.h #5486
- Fix counting '@' in dataset namelen #5432 #5456
- Fix dmu_object_size_from_db() call under spinlock #3858
- Fix lookup_bdev() on Ubuntu #5336
- Fix receiving custom snapshot properties #5189
- Fix bio merging w/noop scheduler #5181
- Fix sync behavior for disk vdevs #4858
- Fix uninitialized variable in avl_add() #3609
- Fix tq_lock contention by making write taskq non-dynamic #5236
- Fix atime handling (relatime, lazytime) #4482
- Fix splat-cred.c cred usage openzfs/spl#556
- Fix splat memleak openzfs/spl#590
- Fix p0 initializer openzfs/spl#576
- Fix aarch64 type warning openzfs/spl#574
- Fix crgetgroups out-of-bound and misc cred fix openzfs/spl#556
- Remove dead root pool import code #4951
v0.7.0-rc3
Supported Kernels
- Compatible with 2.6.32 - 4.10 Linux kernels.
New Features
- Added ARC Buffer Data (ABD) implementation
- Added OpenZFS FMD ZFS logic to ZED
- Added dynamic metaslab selection (OpenZFS 7303)
- Added support for
.zfs/snapshot
directories on 32-bit systems - Added support for O_TMPFILE flag
- Added -c to zpool iostat & status to run command
Performance
- Added parity generation/rebuild using AVX-512 instructions on x86-64
- Added superscalar fletcher4 optimization
- Added *_by-dnode routines
- Removed unnecessary zio_root() for bonus buf (OpenZFS 7143)
- Reduced
zpool import
,zpool export
time for pools with a large number of volumes
Bug Fixes
- Fixed
zpool import
detection issues - Fixed unlinked file cannot do xattr operations
- Fixed file attributes
- Fixed vdev_file deadlock
- Fixed temporary pool names
- Fixed zvol
zfs suspend/resume
for receive and rollback - Fixed
arc_summary.py
- Fixed 22 Coverity defects
- Fixed
cstyle -cpP
warnings updated CI to check all PRs - Applied 20 upstream OpenZFS patches
- Enabled additional ZFS Test Suite test cases
- Assorted documentation and man page updates
This tag is provided for evaluation and testing of the upcoming 0.7.0 release.
It is not recommended for production use.
v0.7.0-rc2
Supported Kernels
- Compatible with 2.6.32 - 4.9 Linux kernels.
New Features
- Added support for user/group dnode accounting & quota
- Added autoreplace support and enclosure LEDs handling for multipath devices
- Added compressed ARC (OpenZFS 6950)
- Added compressed
zfs send/receive
(OpenZFS 7252) - Added cryptographic checksums SHA-512, Skein, Edon-R (OpenZFS 4185)
- Added
zpool create -o feature@<feature>=disabled
support - Added performance regression tests to the ZFS Test Suite
- Added support for real disks to the ZFS Test Suite
- Added python style checking with flake8
Performance
- Explicit block device plugging when submitting multiple
- Added parity generation/rebuild using 128-bits NEON for Aarch64
- Added fletcher4 using 128-bits NEON for Aarch64
- Added batched quota object updates (OpenZFS 6988)
- Added allocation throttle (OpenZFS 7090)
Bug Fixes
- Fixed dracut module
- Fixed volume bookmarks can be listed recursively
- Fixed various memory leaks in the zfs/zpool utilties
- Fixed
ignore_hole_birth
enabled by default - Fixed
/etc/mtab
users converted to/proc/self/mount
- Fixed 82 Coverity defects
- Applied 12 upstream OpenZFS patches
- Enabled additional ZFS Test Suite test cases
- Assorted documentation and man page updates
This tag is provided for evaluation and testing of the upcoming 0.7.0 release.
It is not recommended for production use.