The Network File System (NFS) client and server changes have been merged for the ongoing Linux 6.14 merge window.
On the NFS client side, one of the new features is enabling use of direct I/O “O_DIRECT” with LOCALIO. This direct I/O enablement with both sync and async I/O modes is being done to help workaround a problem with LOCALIO double buffering buffered I/O due to the page cache in NFS and the underlying file-system. It also doesn’t deal with the matter of NFS not currently ensuring all writes are page-aligned. In any event LOCALIO will now use O_DIRECT semantics and can cause I/O to fail for applications that do not properly align their I/O.
The NFS client code for Linux 6.14 also adds LOCALIO-related tracepoints, code clean-ups, and various fixes. See this pull for all the details on the NFS client updates in Linux 6.14.
The NFS server updates were also merged for Linux 6.14. Notable here is NFSv4.2+ attribute delegation support:
“Jeff Layton contributed an implementation of NFSv4.2+ attribute delegation, as described here:
https://www.ietf.org/archive/id/draft-ietf-nfsv4-delstid-08.html
This interoperates with similar functionality introduced into the Linux NFS client in v6.11. An attribute delegation permits an NFS client to manage a file’s mtime, rather than flushing dirty data to the NFS server so that the file’s mtime reflects the last write, which is considerably slower.”
The NFS server changes on this new kernel also add dynamic NFSv4.1 dynamic session slot table resizing and various bug fixes. More details on all the NFS server changes for Linux 6.14 via this pull.