[PATCH v1 0/6] NFSD read path clean-ups

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



There are significant changes afoot for the NFSD I/O
infrastructure, including changes to the use of rq_pages and
adding support for folios. With this series, I'm starting to
re-shape some of the I/O path code to prepare it for these
modifications.

In particular, eventually the TCP send path will eventually
take a single iterator to cover the record marker, the head
buffer, and possibly a page or folio array, and a tail buffer.
NFSD's generic read and write infrastructure (ie, fs/nfsd/vfs.c)
will need to cope with that, and it will need to handle getting
READ payloads in the form of folios rather than pages, in many
cases.

Consider this series as a set of clean-ups, but also as a
conversation starter about how this work should progress.

---

Chuck Lever (6):
      NFSD: Ensure that xdr_write_pages updates rq_next_page
      NFSD: Use svcxdr_encode_opaque_pages() in nfsd4_encode_splice_read()
      NFSD: Update rq_next_page between COMPOUND operations
      NFSD: Hoist rq_vec preparation into nfsd_read()
      NFSD: Hoist rq_vec preparation into nfsd_read() [step two]
      NFSD: Remove nfsd_readv()


 fs/nfsd/nfs3proc.c         | 14 +------
 fs/nfsd/nfs3xdr.c          | 11 ++++--
 fs/nfsd/nfs4xdr.c          | 61 +++++++++++++++---------------
 fs/nfsd/nfsproc.c          | 14 +------
 fs/nfsd/nfsxdr.c           | 11 ++++--
 fs/nfsd/vfs.c              | 76 +++++++++++++++++++++++++++++++-------
 fs/nfsd/vfs.h              |  9 ++---
 include/linux/sunrpc/svc.h | 21 +++++++++++
 include/linux/sunrpc/xdr.h |  3 +-
 net/sunrpc/xdr.c           | 26 ++++++-------
 10 files changed, 148 insertions(+), 98 deletions(-)

--
Chuck Lever




[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux