The NTFS3 driver maintained by Paragon Software receives significant updates for Linux 7.0, including improved readahead, fsync operations, and delayed allocation support, while the competing "NTFS Remake" driver continues development with its latest v9 patches.
The NTFS3 driver maintained by Paragon Software for Microsoft NTFS file-systems today saw a batch of improvements merged for Linux 7.0. This comes as there is also the competing "NTFS Remake" driver that began a few months ago as the "NTFSPLUS" driver. That NTFS Remake driver isn't looking like it will be submitted for the Linux 7.0 merge window so at least for now the NTFS3 driver continues seeing improvements with the latest mainline kernel code.
Konstantin Komarov of Paragon Software today sent out the NTFS3 updates for Linux 7.0 and they have since been merged to Git. Highlights include improved readahead for bitmap initialization and large directory scans, fsync files by syncing parent inodes, implementing iomap-based file operations, delayed allocation support, and other improvements as well as a handful of bug fixes. The list of highlights and other changes for the NTFS3 driver in Linux 7.0 can be found via this Git merge.
Meanwhile when it comes to the NTFS remake driver as what's working toward a better, more featureful, and performant NTFS driver for Linux systems saw v9 patches posted this week. Those v9 patches are updated against the early Linux Git state and bring various fixes.
The State of NTFS Support in Linux
The NTFS file system has long been a challenge for the Linux ecosystem. While Windows dominates desktop usage globally, Linux users frequently encounter NTFS-formatted drives from Windows systems. The need for robust NTFS support has driven multiple development efforts over the years.
Currently, there are three main approaches to NTFS support in Linux:
- NTFS-3G: The traditional FUSE-based driver that has been around for years
- NTFS3: The kernel-space driver maintained by Paragon Software
- NTFS Remake: The new in-development kernel driver aiming to replace both
NTFS3 Driver Improvements in Linux 7.0
The NTFS3 driver improvements for Linux 7.0 represent significant technical advancements. The readahead improvements for bitmap initialization and large directory scans should provide noticeable performance gains when accessing directories with many files or when initializing file system metadata.
The fsync implementation change - syncing parent inodes - addresses a critical aspect of data integrity. When files are modified, ensuring their parent directories are also synchronized prevents metadata inconsistencies that could lead to file system corruption or lost files during unexpected shutdowns.
The implementation of iomap-based file operations is particularly noteworthy. Iomap is a modern kernel interface for block device and file I/O that provides better performance and more features than older interfaces. This change should improve both performance and maintainability of the NTFS3 driver.
Delayed allocation support is another significant addition. This feature allows the file system to delay deciding where to place file data blocks until it absolutely needs to, which can lead to better performance and more efficient use of storage space. This is particularly important for write-heavy workloads.
The NTFS Remake Driver Progress
The NTFS Remake driver, which started as NTFSPLUS, represents an ambitious effort to create a new, modern NTFS implementation from scratch. The v9 patches posted this week show continued development momentum.
While the NTFS Remake driver won't make it into Linux 7.0, its continued development suggests it may be ready for mainline inclusion in a future kernel version. The fact that it's being updated against early Linux Git state indicates the developers are staying current with kernel changes and preparing for eventual submission.
Why Multiple NTFS Drivers Exist
The existence of multiple NTFS drivers in Linux reflects different approaches to solving the same problem:
- NTFS-3G uses FUSE (Filesystem in Userspace), which makes it easier to develop and maintain but comes with performance overhead since it operates in user space rather than kernel space.
- NTFS3 is a kernel-space driver that offers better performance but requires more careful maintenance to keep up with kernel API changes.
- NTFS Remake aims to combine the best of both worlds - kernel-space performance with modern, maintainable code.
Impact on Linux Users
For most Linux users, the improvements to NTFS3 in Linux 7.0 will be the most immediately noticeable. Better readahead performance means faster directory listings and file access, while improved fsync operations mean better data safety when working with NTFS drives.
The continued development of NTFS Remake suggests that Linux users may eventually have an even better NTFS solution, but that's likely still months or years away from being ready for production use.
Technical Context
The NTFS file system is significantly more complex than many other file systems. It supports features like:
- Access control lists (ACLs)
- Alternate data streams
- Hard links and junctions
- Compressed files
- Encrypted files
- Sparse files
- Transactional operations
Implementing all of these features correctly while maintaining performance and stability is a substantial challenge, which explains why multiple development efforts are underway.
Looking Ahead
The NTFS3 driver improvements in Linux 7.0 represent incremental but important progress. The addition of features like delayed allocation and iomap support brings it closer to parity with modern file systems in terms of features and performance.
The NTFS Remake driver's continued development suggests that the Linux community is committed to eventually having a best-of-breed NTFS implementation. Whether that comes from improving NTFS3 or replacing it with NTFS Remake remains to be seen.
For now, Linux users working with NTFS drives can look forward to better performance and reliability in Linux 7.0, while keeping an eye on the promising developments of the NTFS Remake project for the future.

Comments
Please log in or register to join the discussion