Btrfs Adds Degenerate RAID Support, Performance Improvements With Linux 5.15
The Btrfs file-system developers have been quite busy this summer with a rather active set of changes ready to go for Linux 5.15. Among the Btrfs changes that were successfully merged today into Linux 5.15 Git include:
- FS-VERITY support as the kernel layer allowing transparent integrity and authenticity protection for read-only files. FS-VERITY already works with EXT4 and F2FS while now works with Btrfs too.
- Support for IDMAPPED mounts to allow for different mounts to expose the same file or directory with different ownership. IDMAPPED mounts was designed with use-cases ranging from containers to systemd-homed. IDMAPPED mounts debuted back in Linux 5.12 but back then only worked on FAT and EXT4 while since then more file-systems have been picking up support.
- Btrfs adds support for "degenerate" RAID0 and RAID10 modes. Under the native Btrfs RAID generate modes, RAID0 can function off a single device and RAID10 can function with two devices rather than needing two devices for RAID0 and four devices for RAID10. This Btrfs RAID degenerate mode was added to assist when converting or removing devices from an array while preserving the profile type.
- A change to the readahead code that could allow speed-ups for full-send, +11% measured in a test.
- Batching of delayed items to speed-up creation of many files.
- Fsync/tree-log speed-ups that show a +2% throughput and 2% lower run-time for a sample workload. There is also lower locking contention on renames that netted +4% for throughput and up to 30% lower latency.
- Continued work on sub-page support and experimental support for write support for 64K page systems with 4K sectors.
- Improving flushing logic and a variety of other fixes and low-level enhancements.
The full list of Btrfs changes for Linux 5.15 can be found via this pull request.