Please pull nfsd changes for 4.20: git://linux-nfs.org/~bfields/linux.git tags/nfsd-4.20 Olga added support for the NFSv4.2 asynchronous copy protocol. We already supported COPY, by copying a limited amount of data and then returning a short result, letting the client resend. The asynchronous protocol should offer better performance at the expense of some complexity. The other highlight is Trond's work to convert the duplicate reply cache to a red-black tree, and to move it and some other server caches to RCU. (Previously these have meant taking global spinlocks on every RPC.) Otherwise, some RDMA work and miscellaneous bugfixes. --b. Amir Goldstein (1): lockd: fix access beyond unterminated strings in prints Andrew Elble (1): nfsd: correctly decrement odstate refcount in error path Chuck Lever (4): svcrdma: Reduce max_send_sges svcrdma: Remove ->release_rqst call in bc reply handler svcrdma: Remove try_module_get from backchannel svcrdma: Increase the default connection credit limit Gustavo A. R. Silva (1): nfsd: fix fall-through annotations Olga Kornievskaia (4): NFSD CB_OFFLOAD xdr NFSD OFFLOAD_STATUS xdr NFSD OFFLOAD_CANCEL xdr NFSD introduce async copy feature Trond Myklebust (18): SUNRPC: Remove the server 'authtab_lock' and just use RCU SUNRPC: Add lockless lookup of the server's auth domain SUNRPC: Refactor sunrpc_cache_lookup SUNRPC: Allow cache lookups to use RCU protection rather than the r/w spinlock SUNRPC: Make server side AUTH_UNIX use lockless lookups knfsd: Allow lockless lookups of the exports SUNRPC: Lockless server RPCSEC_GSS context lookup knfsd: Lockless lookup of NFSv4 identities. NFS: Lockless DNS lookups NFS: Fix up a typo in nfs_dns_ent_put SUNRPC: Remove non-RCU protected lookup SUNRPC: Replace the cache_detail->hash_lock with a regular spinlock SUNRPC: Simplify TCP receive code knfsd: Remove dead code from nfsd_cache_lookup knfsd: Simplify NFS duplicate replay cache knfsd: Further simplify the cache lookup knfsd: Improve lookup performance in the duplicate reply cache using an rbtree nfsd: Fix an Oops in free_session() YueHaibing (1): nfsd: remove set but not used variable 'dirp' Documentation/filesystems/nfs/rpc-cache.txt | 6 +- fs/lockd/host.c | 2 +- fs/nfs/dns_resolve.c | 15 +- fs/nfsd/cache.h | 20 +- fs/nfsd/export.c | 14 +- fs/nfsd/export.h | 2 + fs/nfsd/netns.h | 8 + fs/nfsd/nfs4callback.c | 98 ++++++++++ fs/nfsd/nfs4idmap.c | 11 +- fs/nfsd/nfs4proc.c | 289 ++++++++++++++++++++++++++-- fs/nfsd/nfs4state.c | 41 +++- fs/nfsd/nfs4xdr.c | 50 ++++- fs/nfsd/nfscache.c | 142 +++++++------- fs/nfsd/nfsctl.c | 1 + fs/nfsd/state.h | 10 + fs/nfsd/vfs.c | 5 +- fs/nfsd/xdr4.h | 28 +++ fs/nfsd/xdr4cb.h | 10 + include/linux/sunrpc/cache.h | 18 +- include/linux/sunrpc/svc_rdma.h | 13 +- include/linux/sunrpc/svcauth.h | 1 + net/sunrpc/auth_gss/svcauth_gss.c | 41 +++- net/sunrpc/cache.c | 153 +++++++++------ net/sunrpc/svc_xprt.c | 2 +- net/sunrpc/svcauth.c | 74 +++++-- net/sunrpc/svcauth_unix.c | 24 ++- net/sunrpc/svcsock.c | 53 ++--- net/sunrpc/xprtrdma/svc_rdma_backchannel.c | 23 +-- net/sunrpc/xprtrdma/svc_rdma_transport.c | 10 +- 29 files changed, 858 insertions(+), 306 deletions(-)