diff options
author | Chuck Lever <chuck.lever@oracle.com> | 2021-05-14 22:56:43 +0300 |
---|---|---|
committer | J. Bruce Fields <bfields@redhat.com> | 2021-05-18 20:44:04 +0300 |
commit | 806d65b617d89be887fe68bfa051f78143669cd7 (patch) | |
tree | 954bf9a08905c5214d0e59f9ee6b9820262a2cd5 /fs/nfsd | |
parent | 167145cc64ce4b4b177e636829909a6b14004f9e (diff) | |
download | linux-806d65b617d89be887fe68bfa051f78143669cd7.tar.xz |
NFSD: Add cb_lost tracepoint
Provide more clarity about when the callback channel is in trouble.
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'fs/nfsd')
-rw-r--r-- | fs/nfsd/nfs4state.c | 2 | ||||
-rw-r--r-- | fs/nfsd/trace.h | 1 |
2 files changed, 3 insertions, 0 deletions
diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c index aa645aeee7b6..377ec4a6a771 100644 --- a/fs/nfsd/nfs4state.c +++ b/fs/nfsd/nfs4state.c @@ -1745,6 +1745,8 @@ static void nfsd4_conn_lost(struct svc_xpt_user *u) struct nfsd4_conn *c = container_of(u, struct nfsd4_conn, cn_xpt_user); struct nfs4_client *clp = c->cn_session->se_client; + trace_nfsd_cb_lost(clp); + spin_lock(&clp->cl_lock); if (!list_empty(&c->cn_persession)) { list_del(&c->cn_persession); diff --git a/fs/nfsd/trace.h b/fs/nfsd/trace.h index 1c43e6647d1e..336dc4c45416 100644 --- a/fs/nfsd/trace.h +++ b/fs/nfsd/trace.h @@ -912,6 +912,7 @@ DEFINE_EVENT(nfsd_cb_class, nfsd_cb_##name, \ DEFINE_NFSD_CB_EVENT(setup); DEFINE_NFSD_CB_EVENT(state); +DEFINE_NFSD_CB_EVENT(lost); DEFINE_NFSD_CB_EVENT(shutdown); TRACE_DEFINE_ENUM(RPC_AUTH_NULL); |