NFS buffered write cleanup

Christoph Hellwig
2024-07-01T05:27:11Z

Hi all,

this series cleans up the nfs_page handling in the buffer write path.

The first patch was already sent independently but hasn't been picked up
and this included here again.

The last patch fixes a bug where a request could get incorrectly reused.
It would require the flexfiles layout and odd I/O timings, and without
a flexfiles server I can't actually hit it. I'd appreciate a careful
review of that one.

The series is against Trond's testing branch.

Diffstat:
fs/nfs/file.c | 6
fs/nfs/filelayout/filelayout.c | 1
fs/nfs/fscache.c | 2
fs/nfs/internal.h | 8 -
fs/nfs/pagelist.c | 117 ---------------
fs/nfs/pnfs.h | 22 --
fs/nfs/pnfs_nfs.c | 47 ------
fs/nfs/read.c | 2
fs/nfs/write.c | 316 ++++++++++++++++++-----------------------
include/linux/nfs_page.h | 7
10 files changed, 157 insertions(+), 371 deletions(-)