Blog/Linux Kernel 5.9 Released
From Forza's ramblings
2020-10-13: Linux Kernel 5.9 Released[edit | edit source]
Yesterday the brand new Linux Kernel 5.9 was released, bringing many new performance updates, new features and bug fixes!
Btrfs specific changes[edit | edit source]
- There is a new 'rescue' mount option to group all existing mount options for recovery. You can still use the individual rescue options separated by a ':' (colon). For example
ro,rescue=nologreplay:usebackuproot
- Much better fsync() performance in some workloads. For example up to 200% better throughput on parallel fsyncs.
- Prefetching of the chunck tree leaves at mount time can improve mount speed in multi-TB file systems
- Balance is better detecting cancellation by Ctrl-C.
- Deprecation of mount option inode_cache, removal scheduled to kernel 5.11.
Head over to the mailing lists to see the full Commit message: https://lore.kernel.org/lkml/[email protected]/
Linux 5.10[edit | edit source]
According to https://lore.kernel.org/lkml/[email protected]/ Kernel 5.10 promises even more performance benefits for Btrfs!
- Fsync performance improvements:
- less contention of log mutex (throughput +4%, latency -14%, dbench with 32 clients)
- skip unnecessary commits for link and rename (throughput +6%, latency -30%, rename latency -75%, dbench with 16 clients)
- make fast fsync wait only for writeback (throughput +10..40%, runtime -1..-20%, dbench with 1 to 64 clients on various file/block sizes)
- Direct I/O is now implemented using the iomap infrastructure, that's the main part, we still have a workaround that requires an iomap API update, coming in 5.10.
- New sysfs exports (/sys/fs/btrfs/):
- information about the exclusive filesystem operation status (balance, device add/remove/replace, ...)
- supported send stream version