mbox series

[0/8] Bugfixes and tracing enhancements for knfsd

Message ID 20200301232145.1465430-1-trond.myklebust@hammerspace.com (mailing list archive)
Headers show
Series Bugfixes and tracing enhancements for knfsd | expand

Message

Trond Myklebust March 1, 2020, 11:21 p.m. UTC
This series fixes an Oops that has been getting in the way of testing
NFSv4.1 in the last few weeks. It adds a number of tracepoints around
the knfsd cache and upcall mechanism in order to help debugging, then
fixes a few races caused by the cache_listeners_exist() mechanism
and goes back to addressing the garbage collection timeouts.

Finally, it fixes the long standing issue that knfsd will drop requests
without dropping the TCP connection, something which violates the NFSv4
protocol.

Trond Myklebust (8):
  nfsd: Don't add locks to closed or closing open stateids
  nfsd: Add tracing to nfsd_set_fh_dentry()
  nfsd: Add tracepoints for exp_find_key() and exp_get_by_name()
  nfsd: Add tracepoints for update of the expkey and export cache
    entries
  nfsd: export upcalls must not return ESTALE when mountd is down
  SUNRPC/cache: Allow garbage collection of invalid cache entries
  sunrpc: Add tracing for cache events
  sunrpc: Drop the connection when the server drops a request

 fs/nfs/dns_resolve.c              |  11 +--
 fs/nfsd/export.c                  |  45 ++++++++---
 fs/nfsd/nfs4idmap.c               |  14 ++++
 fs/nfsd/nfs4state.c               |  73 ++++++++++--------
 fs/nfsd/nfsfh.c                   |  13 +++-
 fs/nfsd/trace.h                   | 122 +++++++++++++++++++++++++++++
 include/linux/sunrpc/cache.h      |   6 +-
 include/trace/events/sunrpc.h     |  33 ++++++++
 net/sunrpc/auth_gss/svcauth_gss.c |  12 +++
 net/sunrpc/cache.c                | 124 +++++++++++++++++-------------
 net/sunrpc/svc_xprt.c             |  10 +++
 net/sunrpc/svcauth_unix.c         |  12 +++
 12 files changed, 370 insertions(+), 105 deletions(-)