Please pull NFS server updates for v5.9

From: Chuck Lever
Date: Sun Aug 09 2020 - 11:46:45 EST


Hello Linus-

The following changes since commit 11ba468877bb23f28956a35e896356252d63c983:

Linux 5.8-rc5 (2020-07-12 16:34:50 -0700)

are available in the Git repository at:

git://git.linux-nfs.org/projects/cel/cel-2.6.git tags/nfsd-5.9

for you to fetch changes up to b297fed699ad9e50315b27e78de42ac631c9990d:

svcrdma: CM event handler clean up (2020-07-28 10:18:15 -0400)

----------------------------------------------------------------
Highlights:

- Support for user extended attributes on NFS (RFC 8276)
- Further reduce unnecessary NFSv4 delegation recalls

Notable fixes:

- Fix recent krb5p regression
- Address a few resource leaks and a rare NULL dereference

Other:

- De-duplicate RPC/RDMA error handling and other utility functions
- Replace storage and display of kernel memory addresses by tracepoints

----------------------------------------------------------------
Chuck Lever (24):
SUNRPC: Augment server-side rpcgss tracepoints
svcrdma: Fix page leak in svc_rdma_recv_read_chunk()
svcrdma: Remove save_io_pages() call from send_error_msg()
svcrdma: Add @rctxt parameter to svc_rdma_send_error() functions
svcrdma: Add a @status parameter to svc_rdma_send_error_msg()
svcrdma: Eliminate return value for svc_rdma_send_error_msg()
svcrdma: Make svc_rdma_send_error_msg() a global function
svcrdma: Consolidate send_error helper functions
svcrdma: Clean up trace_svcrdma_send_failed() tracepoint
svcrdma: Remove declarations for functions long removed
SUNRPC: Add helpers for decoding list discriminators symbolically
svcrdma: Add common XDR decoders for RDMA and Read segments
svcrdma: Add common XDR encoders for RDMA and Read segments
svcrdma: Introduce infrastructure to support completion IDs
svcrdma: Introduce Receive completion IDs
svcrdma: Record Receive completion ID in svc_rdma_decode_rqst
svcrdma: Introduce Send completion IDs
svcrdma: Record send_ctxt completion ID in trace_svcrdma_post_send()
svcrdma: Display chunk completion ID when posting a rw_ctxt
SUNRPC: Fix ("SUNRPC: Add "@len" parameter to gss_unwrap()")
SUNRPC: Refresh the show_rqstp_flags() macro
svcrdma: Fix another Receive buffer leak
svcrdma: Remove transport reference counting
svcrdma: CM event handler clean up

Frank van der Linden (10):
nfs,nfsd: NFSv4.2 extended attribute protocol definitions
xattr: break delegations in {set,remove}xattr
xattr: add a function to check if a namespace is supported
nfsd: split off the write decode code into a separate function
nfsd: add defines for NFSv4.2 extended attribute support
nfsd: define xattr functions to call into their vfs counterparts
nfsd: take xattr bits into account for permission checks
nfsd: add structure definitions for xattr requests / responses
nfsd: implement the xattr functions and en/decode logic
nfsd: add fattr support for user extended attributes

J. Bruce Fields (1):
nfsd4: a client's own opens needn't prevent delegations

Randy Dunlap (1):
nfsd: netns.h: delete a duplicated word

Scott Mayhew (1):
nfsd: avoid a NULL dereference in __cld_pipe_upcall()

Xu Wang (1):
nfsd: Use seq_putc() in two functions

fs/locks.c | 3 +
fs/nfsd/netns.h | 2 +-
fs/nfsd/nfs4idmap.c | 4 +-
fs/nfsd/nfs4proc.c | 128 ++++++++++++++++++++++-
fs/nfsd/nfs4recover.c | 24 ++---
fs/nfsd/nfs4state.c | 54 +++++++---
fs/nfsd/nfs4xdr.c | 531 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------
fs/nfsd/nfsd.h | 5 +-
fs/nfsd/vfs.c | 239 ++++++++++++++++++++++++++++++++++++++++++
fs/nfsd/vfs.h | 10 ++
fs/nfsd/xdr4.h | 31 ++++++
fs/xattr.c | 111 ++++++++++++++++++--
include/linux/nfs4.h | 22 +++-
include/linux/sunrpc/rpc_rdma.h | 74 +++++++++++++
include/linux/sunrpc/rpc_rdma_cid.h | 24 +++++
include/linux/sunrpc/svc_rdma.h | 17 ++-
include/linux/sunrpc/xdr.h | 26 +++++
include/linux/xattr.h | 4 +
include/trace/events/rpcgss.h | 168 +++++++++++++++++++++++++-----
include/trace/events/rpcrdma.h | 207 +++++++++++++++++++-----------------
include/trace/events/sunrpc.h | 35 +++++--
include/uapi/linux/nfs4.h | 3 +
net/sunrpc/auth_gss/gss_krb5_wrap.c | 2 +-
net/sunrpc/auth_gss/svcauth_gss.c | 118 ++++++++++++++-------
net/sunrpc/auth_gss/trace.c | 3 +
net/sunrpc/xprtrdma/frwr_ops.c | 1 -
net/sunrpc/xprtrdma/rpc_rdma.c | 31 ++----
net/sunrpc/xprtrdma/svc_rdma_backchannel.c | 2 +-
net/sunrpc/xprtrdma/svc_rdma_recvfrom.c | 115 +++++++-------------
net/sunrpc/xprtrdma/svc_rdma_rw.c | 81 +++++++++------
net/sunrpc/xprtrdma/svc_rdma_sendto.c | 124 ++++++++++++++--------
net/sunrpc/xprtrdma/svc_rdma_transport.c | 74 +++++--------
32 files changed, 1807 insertions(+), 466 deletions(-)
create mode 100644 include/linux/sunrpc/rpc_rdma_cid.h
--
Chuck Lever