Hi Linus- Assuming you will open the v6.5 merge window on Sunday, here is an early pull request for NFSD. Most of these have been soaking in linux-next for quite some time. There are no major features this time. There are a few big ticket items in the pipeline, however. I expect some interesting stuff to show up in the v6.6 time frame. The following changes since commit 9561de3a55bed6bdd44a12820ba81ec416e705a7: Linux 6.4-rc5 (2023-06-04 14:04:27 -0400) are available in the Git repository at: https://git.kernel.org/pub/scm/linux/kernel/git/cel/linux.git tags/nfsd-6.5 for you to fetch changes up to 75bfb70457a4c4c9f0095e39885382fc5049c5ce: nfsd: remove redundant assignments to variable len (2023-06-21 15:05:32 -0400) ---------------------------------------------------------------- NFSD 6.5 Release Notes Fixes and clean-ups include: - Clean-ups in the READ path in anticipation of MSG_SPLICE_PAGES - Better NUMA awareness when allocating pages and other objects - A number of minor clean-ups to XDR encoding - Elimination of a race when accepting a TCP socket - Numerous observability enhancements ---------------------------------------------------------------- Azeem Shaikh (1): SUNRPC: Use sysfs_emit in place of strlcpy/sprintf Christian Brauner (1): nfsd: use vfs setgid helper Chuck Lever (38): SUNRPC: Fix an incorrect comment SUNRPC: Remove dprintk() in svc_handle_xprt() SUNRPC: Improve observability in svc_tcp_accept() SUNRPC: Trace struct svc_sock lifetime events NFSD: Clean up nfsctl white-space damage NFSD: Clean up nfsctl_transaction_write() NFSD: trace nfsctl operations SUNRPC: Resupply rq_pages from node-local memory SUNRPC: Use __alloc_bulk_pages() in svc_init_buffer() NFSD: Add encoders for NFSv4 clientids and verifiers NFSD: Replace encode_cinfo() 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() svcrdma: Allocate new transports on device's NUMA node svcrdma: Clean up allocation of svc_rdma_recv_ctxt svcrdma: Clean up allocation of svc_rdma_send_ctxt svcrdma: Clean up allocation of svc_rdma_rw_ctxt mailmap: Add Bruce Fields' latest e-mail addresses NFSD: Add "official" reviewers for this subsystem SUNRPC: Revert cc93ce9529a6 ("svcrdma: Retain the page backing rq_res.head[0].iov_base") SUNRPC: Revert 579900670ac7 ("svcrdma: Remove unused sc_pages field") svcrdma: Revert 2a1e4f21d841 ("svcrdma: Normalize Send page handling") svcrdma: Prevent page release when nothing was received SUNRPC: Optimize page release in svc_rdma_sendto() SUNRPC: Move initialization of rq_stime NFSD: Add an nfsd4_encode_nfstime4() helper svcrdma: Convert "might sleep" comment into a code annotation svcrdma: trace cc_release calls svcrdma: Remove an unused argument from __svc_rdma_put_rw_ctxt() SUNRPC: Fix comments for transport class registration SUNRPC: Remove transport class dprintk call sites SUNRPC: Address RCU warning in net/sunrpc/svc.c NFSD: Distinguish per-net namespace initialization svcrdma: Fix stale comment Colin Ian King (1): nfsd: remove redundant assignments to variable len Dai Ngo (1): NFSD: add encoding of op_recall flag for write delegation Ding Hui (1): SUNRPC: Fix UAF in svc_tcp_listen_data_ready() Jeff Layton (2): nfsd: don't provide pre/post-op attrs if fh_getattr fails nfsd: move init of percpu reply_cache_stats counters back to nfsd_init_net NeilBrown (1): lockd: drop inappropriate svc_get() from locked_get() .mailmap | 2 + MAINTAINERS | 4 ++ fs/lockd/svc.c | 1 - fs/nfsd/cache.h | 2 + fs/nfsd/export.c | 12 ++-- fs/nfsd/nfs3proc.c | 14 +---- fs/nfsd/nfs3xdr.c | 11 ++-- fs/nfsd/nfs4xdr.c | 289 ++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------- fs/nfsd/nfscache.c | 25 ++++---- fs/nfsd/nfsctl.c | 116 ++++++++++++++++++++++++------------- fs/nfsd/nfsfh.c | 26 +++------ fs/nfsd/nfsproc.c | 14 +---- fs/nfsd/nfssvc.c | 5 ++ fs/nfsd/nfsxdr.c | 11 ++-- fs/nfsd/trace.h | 259 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ fs/nfsd/vfs.c | 80 +++++++++++++++++++++----- fs/nfsd/vfs.h | 9 ++- include/linux/sunrpc/svc.h | 21 +++++++ include/linux/sunrpc/svc_rdma.h | 5 +- include/linux/sunrpc/xdr.h | 3 +- include/trace/events/rpcrdma.h | 8 +++ include/trace/events/sunrpc.h | 41 +++++++++----- net/sunrpc/svc.c | 41 ++++++-------- net/sunrpc/svc_xprt.c | 26 ++++++--- net/sunrpc/svcsock.c | 38 ++++++------- net/sunrpc/xdr.c | 26 ++++----- net/sunrpc/xprtrdma/svc_rdma_backchannel.c | 8 +-- net/sunrpc/xprtrdma/svc_rdma_recvfrom.c | 36 +++++------- net/sunrpc/xprtrdma/svc_rdma_rw.c | 24 ++++---- net/sunrpc/xprtrdma/svc_rdma_sendto.c | 62 ++++++++++++-------- net/sunrpc/xprtrdma/svc_rdma_transport.c | 18 +++--- 31 files changed, 802 insertions(+), 435 deletions(-) -- Chuck Lever