Bcachefs Sees Improved Journal Pipelining & More Efficient Discard With Linux 6.9
Earlier this week with the original Bcachefs pull request for Linux 6.9 Linus Torvalds wasn't happy with some of the code pertaining to spinning out a new library code so that it could be re-used by at least the XFS file-system. A revised pull request was since submitted without that library spin-out and Torvalds today went ahead and merged that updated file-system driver.
The revised Bcachefs pull request without the library code that upset Linus Torvalds has been merged for Linux 6.9. The Bcachefs improvements for this kernel cycle include:
The enhanced journal pipeline, discard improvements, and other optimizations are nice to see for this file-system that was originally merged back in Linux 6.7.
The full list of Bcachefs patches merged for Linux 6.9 can be found via the v2 pull request.
The revised Bcachefs pull request without the library code that upset Linus Torvalds has been merged for Linux 6.9. The Bcachefs improvements for this kernel cycle include:
- Subvolume children btree; this is needed for providing a userspace interface for walking subvolumes, which will come later
- Lots of improvements to directory structure checking
- Improved journal pipelining, significantly improving performance on high iodepth write workloads
- Discard path improvements: the discard path is more efficient, and no longer flushes the journal unnecessarily
- Buffered write path can now avoid taking the inode lock
- new mm helper: memalloc_flags_{save|restore}
- mempool now does kvmalloc mempools
The enhanced journal pipeline, discard improvements, and other optimizations are nice to see for this file-system that was originally merged back in Linux 6.7.
The full list of Bcachefs patches merged for Linux 6.9 can be found via the v2 pull request.
15 Comments