[PATCH v2 0/6] Remove svc_rqst :: rq_vec

cel
2025-05-08T17:37:42Z

I expect this arrangement will not be permanent: the end-goal
might be folio queues rather than bio_vecs.

I intend to insert these into the series that expands the maximum
r/wsize, once this series is reviewed.

Testing has shown no correctness issues. There is a consistent and
measurable performance loss on NFSv4.1 with the write path changes.
I've mitigated it somewhat in this version of the series, but I
still do not understand why it happens (it also happened when the
series used svc_fill_write_vector()).

Chuck Lever (6):
NFSD: Use rqstp->rq_bvec in nfsd_iter_read()
SUNRPC: Export xdr_buf_to_bvec()
NFSD: De-duplicate the svc_fill_write_vector() call sites
NFSD: Use rqstp->rq_bvec in nfsd_iter_write()
SUNRPC: Remove svc_fill_write_vector()
SUNRPC: Remove svc_rqst :: rq_vec

fs/nfsd/nfs3proc.c | 5 +--
fs/nfsd/nfs4proc.c | 8 ++---
fs/nfsd/nfsproc.c | 9 ++----
fs/nfsd/vfs.c | 65 +++++++++++++++++++++++++++-----------
fs/nfsd/vfs.h | 10 +++---
include/linux/sunrpc/svc.h | 3 --
net/sunrpc/svc.c | 46 ---------------------------
net/sunrpc/xdr.c | 1 +
8 files changed, 59 insertions(+), 88 deletions(-)

--
2.49.0