]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
NFSD: Trace stateids returned via DELEGRETURN
authorChuck Lever <chuck.lever@oracle.com>
Fri, 28 Oct 2022 14:47:03 +0000 (10:47 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 10 Apr 2024 14:19:22 +0000 (16:19 +0200)
[ Upstream commit 20eee313ff4b8a7e71ae9560f5c4ba27cd763005 ]

Handing out a delegation stateid is recorded with the
nfsd_deleg_read tracepoint, but there isn't a matching tracepoint
for recording when the stateid is returned.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Reviewed-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
fs/nfsd/nfs4state.c
fs/nfsd/trace.h

index 2f720433632b8da2c0a154270cf6654eeb19e9b3..935111173083462209a6c628410ecc00afe2fb58 100644 (file)
@@ -6915,6 +6915,7 @@ nfsd4_delegreturn(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
        if (status)
                goto put_stateid;
 
+       trace_nfsd_deleg_return(stateid);
        wake_up_var(d_inode(cstate->current_fh.fh_dentry));
        destroy_delegation(dp);
 put_stateid:
index d449c364cc76b6e0a75471b3a4e3e8450fdb5f00..d55a05f1a58f7db5fc3f7063551b46dcc16b9031 100644 (file)
@@ -604,6 +604,7 @@ DEFINE_STATEID_EVENT(layout_recall_release);
 
 DEFINE_STATEID_EVENT(open);
 DEFINE_STATEID_EVENT(deleg_read);
+DEFINE_STATEID_EVENT(deleg_return);
 DEFINE_STATEID_EVENT(deleg_recall);
 
 DECLARE_EVENT_CLASS(nfsd_stateseqid_class,