Loading fs/nfs/nfs4proc.c +3 −0 Original line number Diff line number Diff line Loading @@ -1950,6 +1950,7 @@ static void nfs41_clear_delegation_stateid(struct nfs4_state *state) cred = get_rpccred(delegation->cred); rcu_read_unlock(); status = nfs41_test_stateid(server, stateid, cred); trace_nfs4_test_delegation_stateid(state, NULL, status); } else rcu_read_unlock(); Loading Loading @@ -1992,6 +1993,7 @@ static int nfs41_check_open_stateid(struct nfs4_state *state) return -NFS4ERR_BAD_STATEID; status = nfs41_test_stateid(server, stateid, cred); trace_nfs4_test_open_stateid(state, NULL, status); if (status != NFS_OK) { /* Free the stateid unless the server explicitly * informs us the stateid is unrecognized. */ Loading Loading @@ -5472,6 +5474,7 @@ static int nfs41_check_expired_locks(struct nfs4_state *state) status = nfs41_test_stateid(server, &lsp->ls_stateid, cred); trace_nfs4_test_lock_stateid(state, lsp, status); if (status != NFS_OK) { /* Free the stateid unless the server * informs us the stateid is unrecognized. */ Loading fs/nfs/nfs4trace.h +49 −0 Original line number Diff line number Diff line Loading @@ -638,6 +638,55 @@ TRACE_EVENT(nfs4_delegreturn_exit, ) ); #ifdef CONFIG_NFS_V4_1 DECLARE_EVENT_CLASS(nfs4_test_stateid_event, TP_PROTO( const struct nfs4_state *state, const struct nfs4_lock_state *lsp, int error ), TP_ARGS(state, lsp, error), TP_STRUCT__entry( __field(int, error) __field(dev_t, dev) __field(u32, fhandle) __field(u64, fileid) ), TP_fast_assign( const struct inode *inode = state->inode; __entry->error = error; __entry->dev = inode->i_sb->s_dev; __entry->fileid = NFS_FILEID(inode); __entry->fhandle = nfs_fhandle_hash(NFS_FH(inode)); ), TP_printk( "error=%d (%s) fileid=%02x:%02x:%llu fhandle=0x%08x", __entry->error, show_nfsv4_errors(__entry->error), MAJOR(__entry->dev), MINOR(__entry->dev), (unsigned long long)__entry->fileid, __entry->fhandle ) ); #define DEFINE_NFS4_TEST_STATEID_EVENT(name) \ DEFINE_EVENT(nfs4_test_stateid_event, name, \ TP_PROTO( \ const struct nfs4_state *state, \ const struct nfs4_lock_state *lsp, \ int error \ ), \ TP_ARGS(state, lsp, error)) DEFINE_NFS4_TEST_STATEID_EVENT(nfs4_test_delegation_stateid); DEFINE_NFS4_TEST_STATEID_EVENT(nfs4_test_open_stateid); DEFINE_NFS4_TEST_STATEID_EVENT(nfs4_test_lock_stateid); #endif /* CONFIG_NFS_V4_1 */ DECLARE_EVENT_CLASS(nfs4_lookup_event, TP_PROTO( const struct inode *dir, Loading Loading
fs/nfs/nfs4proc.c +3 −0 Original line number Diff line number Diff line Loading @@ -1950,6 +1950,7 @@ static void nfs41_clear_delegation_stateid(struct nfs4_state *state) cred = get_rpccred(delegation->cred); rcu_read_unlock(); status = nfs41_test_stateid(server, stateid, cred); trace_nfs4_test_delegation_stateid(state, NULL, status); } else rcu_read_unlock(); Loading Loading @@ -1992,6 +1993,7 @@ static int nfs41_check_open_stateid(struct nfs4_state *state) return -NFS4ERR_BAD_STATEID; status = nfs41_test_stateid(server, stateid, cred); trace_nfs4_test_open_stateid(state, NULL, status); if (status != NFS_OK) { /* Free the stateid unless the server explicitly * informs us the stateid is unrecognized. */ Loading Loading @@ -5472,6 +5474,7 @@ static int nfs41_check_expired_locks(struct nfs4_state *state) status = nfs41_test_stateid(server, &lsp->ls_stateid, cred); trace_nfs4_test_lock_stateid(state, lsp, status); if (status != NFS_OK) { /* Free the stateid unless the server * informs us the stateid is unrecognized. */ Loading
fs/nfs/nfs4trace.h +49 −0 Original line number Diff line number Diff line Loading @@ -638,6 +638,55 @@ TRACE_EVENT(nfs4_delegreturn_exit, ) ); #ifdef CONFIG_NFS_V4_1 DECLARE_EVENT_CLASS(nfs4_test_stateid_event, TP_PROTO( const struct nfs4_state *state, const struct nfs4_lock_state *lsp, int error ), TP_ARGS(state, lsp, error), TP_STRUCT__entry( __field(int, error) __field(dev_t, dev) __field(u32, fhandle) __field(u64, fileid) ), TP_fast_assign( const struct inode *inode = state->inode; __entry->error = error; __entry->dev = inode->i_sb->s_dev; __entry->fileid = NFS_FILEID(inode); __entry->fhandle = nfs_fhandle_hash(NFS_FH(inode)); ), TP_printk( "error=%d (%s) fileid=%02x:%02x:%llu fhandle=0x%08x", __entry->error, show_nfsv4_errors(__entry->error), MAJOR(__entry->dev), MINOR(__entry->dev), (unsigned long long)__entry->fileid, __entry->fhandle ) ); #define DEFINE_NFS4_TEST_STATEID_EVENT(name) \ DEFINE_EVENT(nfs4_test_stateid_event, name, \ TP_PROTO( \ const struct nfs4_state *state, \ const struct nfs4_lock_state *lsp, \ int error \ ), \ TP_ARGS(state, lsp, error)) DEFINE_NFS4_TEST_STATEID_EVENT(nfs4_test_delegation_stateid); DEFINE_NFS4_TEST_STATEID_EVENT(nfs4_test_open_stateid); DEFINE_NFS4_TEST_STATEID_EVENT(nfs4_test_lock_stateid); #endif /* CONFIG_NFS_V4_1 */ DECLARE_EVENT_CLASS(nfs4_lookup_event, TP_PROTO( const struct inode *dir, Loading