User`s guide
Core Kernel Functionality
30
• RAID-5 XOR checksumming is optimized by taking advantage of the 256-bit YMM registers introduced
by Advanced Vector Extensions (AVX). (3.5)
• RAID-6 includes Supplemental Streaming SIMD Extensions 3 (SSSE3) optimized recovery functions and
a new algorithm for selecting the most appropriate function to use for recovery. (3.5)
• MD allows a reshape operation to be reversed by implementing a new reshape_direction attribute
that can be set when delta_disks is zero, and which can take one of the values forward or
backwards. (3.5)
• A RAID-10 array can be reshaped to a different near or offset layout, a different chunk size, and a
different number of devices. The number of copies cannot be changed. (3.5)
• An existing partition can be resized, even if currently in use, by using the operation code
BLKPG_RESIZE_PARTITION with the BLKPG ioctl(). (3.6)
• Add MD support for RAID10 (striped mirrors) and RAID1E (integrated adjacent stripe mirroring). (3.6)
• Thin target in the device mapper adds read-only and fail-io modes to thin provisioning. If a
transaction commit fails, a pool's metadata device transitions to read-only mode. If a commit fails
when the device is in read-only mode, a transition to fail-io mode occurs. In fail-io mode, the
pool and all associated thin devices report a status of fail if a commit fails. (3.6)
• The persistent data debug space map checker has been removed from the device mapper. The feature
consumed a lot of memory and caused other issues when enabled on large pools. (3.6)
• RAID-1 in MD now prevents the merging of large requests to enhance the performance of SSD devices
that function more efficiently with large request transfers. (3.6)
• Support for the WRITE SAME request implemented on some SCSI devices to allow a block to be
efficiently replicated throughout a block range. Only a single logical block need be transferred from the
host. The storage device writes the same data to all blocks specified by the request. (3.7)
• The BLKZEROOUT ioctl() can be used to zero out block ranges via blkdev_issue_zerooout().
(3.7)
• Fastmap support provides a method for attaching an unsorted block image (UBI) device in real-time.
Rather than scanning the entire device, Fastmap locates a checkpoint. (3.7)
• MD adds TRIM discard support for linear RAID-0, RAID-1, RAID-5, and RAID-10. (3.7)
• DM adds rebuild capacity and replacement slot validation for RAID-10 arrays. (3.7)
• RAID-6 recovery is optimized by taking advantage of the 256-bit YMM registers introduced by Advanced
Vector Extensions 2 (AVX2). (3.8)
A.3 Core Kernel Functionality
• Add a lock-less NULL-terminated single list. (3.1)
• Add a library function implementing a crc8 algorithm to support the brcm80211 driver. (3.1)
• Make the gen_pool memory allocator lockless. This change makes it safe to use the memory allocator
in NMI handlers and other special unblockable contexts where deadlocks might occur. (3.1)
• Implement the PTRACE_INTERRUPT, PTRACE_LISTEN, PTRACE_SEIZE, and TRAP_NOTIFY
ptrace() requests. (3.1)
• Adds /sys/module/module_name/uevent files to all module entries to provide a method for
managing built-in modules from user space. (3.1)