Good day - Thanks go to this release's contributors and reviewers, and especially to the netdev maintainers for helping to get the RPC-with-TLS support prepared for merge. The following changes since commit 9b78d919632b7149d311aaad5a977e4b48b10321: net: phy: hide the PHYLIB_LEDS knob (2023-04-26 11:54:50 +0200) are available in the Git repository at: https://git.kernel.org/pub/scm/linux/kernel/git/cel/linux.git tags/nfsd-6.4 for you to fetch changes up to 9280c577431401544e63dfb489a830a42bee25eb: NFSD: Handle new xprtsec= export option (2023-04-27 18:49:24 -0400) ---------------------------------------------------------------- NFSD 6.4 Release Notes The big ticket item for this release is support for RPC-with-TLS [RFC 9289] has been added to the Linux NFS server. The goal is to provide a simple-to-deploy, low-overhead in-transit confidentiality and peer authentication mechanism. It can supplement NFS Kerberos and it can protect the use of legacy non-cryptographic user authentication flavors such as AUTH_SYS. The TLS Record protocol is handled entirely by kTLS, meaning it can use either software encryption or offload encryption to smart NICs. Work continues on improving NFSD's open file cache. Among the many clean-ups in that area is a patch to convert the rhashtable to use the list-hashing version of that data structure. ---------------------------------------------------------------- Chuck Lever (12): NFSD: Convert filecache to rhltable NFSD: Watch for rq_pages bounds checking errors in nfsd_splice_actor() SUNRPC: Ensure server-side sockets have a sock->file SUNRPC: Ignore return value of ->xpo_sendto SUNRPC: Relocate svc_free_res_pages() SUNRPC: Convert svc_xprt_release() to the release_pages() API SUNRPC: Be even lazier about releasing pages SUNRPC: Recognize control messages in server-side TCP socket code SUNRPC: Clear rq_xid when receiving a new RPC Call NFSD: Clean up xattr memory allocation flags SUNRPC: Support TLS handshake in the server-side TCP socket code NFSD: Handle new xprtsec= export option Dai Ngo (1): NFSD: Fix problem of COMMIT and NFS4ERR_DELAY in infinite loop Jeff Layton (16): nfsd: don't open-code clear_and_wake_up_bit nfsd: NFSD_FILE_KEY_INODE only needs to find GC'ed entries nfsd: simplify test_bit return in NFSD_FILE_KEY_FULL comparator nfsd: don't kill nfsd_files because of lease break error nfsd: add some comments to nfsd_file_do_acquire nfsd: don't take/put an extra reference when putting a file nfsd: update comment over __nfsd_file_cache_purge nfsd: allow reaping files still under writeback lockd: purge resources held on behalf of nlm clients when shutting down lockd: remove 2 unused helper functions lockd: move struct nlm_wait to lockd.h lockd: fix races in client GRANTED_MSG wait logic lockd: server should unlock lock if client rejects the grant nfs: move nfs_fhandle_hash to common include file lockd: add some client-side tracepoints nfsd: simplify the delayed disposal list code Luis Chamberlain (1): sunrpc: simplify two-level sysctl registration for svcrdma_parm_table NeilBrown (1): SUNRPC: return proper error from get_expiry() fs/lockd/Makefile | 6 +- fs/lockd/clntlock.c | 58 ++++++-------- fs/lockd/clntproc.c | 42 +++++++--- fs/lockd/host.c | 1 + fs/lockd/svclock.c | 21 ++++- fs/lockd/trace.c | 3 + fs/lockd/trace.h | 106 +++++++++++++++++++++++++ fs/nfs/export.c | 9 ++- fs/nfs/internal.h | 15 ---- fs/nfsd/export.c | 64 +++++++++++++--- fs/nfsd/export.h | 1 + fs/nfsd/filecache.c | 430 ++++++++++++++++++++++++++++++++++++++++++++---------------------------------------------------------- fs/nfsd/filecache.h | 9 ++- fs/nfsd/nfs4idmap.c | 8 +- fs/nfsd/vfs.c | 13 ++-- include/linux/exportfs.h | 1 + include/linux/lockd/lockd.h | 29 +++---- include/linux/nfs.h | 20 +++++ include/linux/sunrpc/cache.h | 15 ++-- include/linux/sunrpc/svc.h | 16 +--- include/linux/sunrpc/svc_xprt.h | 5 +- include/linux/sunrpc/svcsock.h | 4 +- include/net/tls.h | 2 + include/trace/events/sunrpc.h | 41 +++++++++- include/uapi/linux/nfsd/export.h | 13 ++++ net/sunrpc/auth_gss/svcauth_gss.c | 12 +-- net/sunrpc/svc.c | 49 ++++++++++-- net/sunrpc/svc_xprt.c | 33 ++++---- net/sunrpc/svcauth_unix.c | 23 ++++-- net/sunrpc/svcsock.c | 174 ++++++++++++++++++++++++++++++++++++++--- net/sunrpc/xprtrdma/svc_rdma.c | 21 +---- 31 files changed, 802 insertions(+), 442 deletions(-) create mode 100644 fs/lockd/trace.c create mode 100644 fs/lockd/trace.h -- Chuck Lever