In addition to the Btrfs updates with real-time Zstd compression support and Bcachefs stabilizing its on-disk format, the Flash Friendly File-System updates have also been submitted already for the newly-opened Linux 6.15 merge window. There are a few exciting improvements for F2FS with this next Linux kernel version.
F2FS this cycle saw work on converting to folios as well as seeing performance optimization work around direct I/O when overwriting data, faster checkpoints via higher priority I/O, and adding a kernel ioctl to get the I/O priority hint.
The F2FS pull request from Jaegeuk Kim sums up this cycle’s file-system highlights as:
“In this round, there are three major updates: 1) folio conversion, 2) refactor for mount API conversion, 3) some performance improvement such as direct IO, checkpoint speed, and IO priority hints. For stability, there are patches which add more sanity checks and fixes some major issues like i_size in atomic write operations and write pointer recovery in zoned devices.
Enhancement:
– huge folio converion work by Matthew Wilcox
– clean up for mount API conversion by Eric Sandeen
– improve direct IO speed in the overwrite case
– add some sanity check on node consistency
– set highest IO priority for checkpoint thread
– keep POSIX_FADV_NOREUSE ranges and add sysfs entry to reclaim pages
– add ioctl to get IO priority hint
– add carve_out sysfs node for fsstatBug fix:
– disable nat_bits during umount to avoid potential nat entry corruption
– fix missing i_size update on atomic writes
– fix missing discard for active segments
– fix running out of free segments
– fix out-of-bounds access in f2fs_truncate_inode_blocks()
– call f2fs_recover_quota_end() correctly
– fix potential deadloop in prepare_compress_overwrite()
– fix the missing write pointer correction for zoned device
– fix to avoid panic once fallocation fails for pinfile
– don’t retry IO for corrupted data scenarioThere are many other clean up patches and minor bug fixes as usual.”
See this pull request for the full list of patches pending for the Linux 6.15 merge window.