summaryrefslogtreecommitdiffstats
path: root/fs/nfs/nfstrace.h
diff options
context:
space:
mode:
authorChuck Lever <chuck.lever@oracle.com>2020-05-12 23:14:00 +0200
committerAnna Schumaker <Anna.Schumaker@Netapp.com>2020-06-11 19:33:48 +0200
commit5be5945864ea143fda628e8179c8474457af1f43 (patch)
tree88da6f242cc65bcd298cf0bd446a81b543a6eed2 /fs/nfs/nfstrace.h
parentSUNRPC: Set SOFTCONN when destroying GSS contexts (diff)
downloadlinux-5be5945864ea143fda628e8179c8474457af1f43.tar.xz
linux-5be5945864ea143fda628e8179c8474457af1f43.zip
NFS: nfs_xdr_status should record the procedure name
When sunrpc trace points are not enabled, the recorded task ID information alone is not helpful. Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Diffstat (limited to '')
-rw-r--r--fs/nfs/nfstrace.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/fs/nfs/nfstrace.h b/fs/nfs/nfstrace.h
index 7e7a97ae21ed..e90651431804 100644
--- a/fs/nfs/nfstrace.h
+++ b/fs/nfs/nfstrace.h
@@ -1312,7 +1312,12 @@ TRACE_EVENT(nfs_xdr_status,
__field(unsigned int, task_id)
__field(unsigned int, client_id)
__field(u32, xid)
+ __field(int, version)
__field(unsigned long, error)
+ __string(program,
+ xdr->rqst->rq_task->tk_client->cl_program->name)
+ __string(procedure,
+ xdr->rqst->rq_task->tk_msg.rpc_proc->p_name)
),
TP_fast_assign(
@@ -1322,13 +1327,19 @@ TRACE_EVENT(nfs_xdr_status,
__entry->task_id = task->tk_pid;
__entry->client_id = task->tk_client->cl_clid;
__entry->xid = be32_to_cpu(rqstp->rq_xid);
+ __entry->version = task->tk_client->cl_vers;
__entry->error = error;
+ __assign_str(program,
+ task->tk_client->cl_program->name)
+ __assign_str(procedure, task->tk_msg.rpc_proc->p_name)
),
TP_printk(
- "task:%u@%d xid=0x%08x error=%ld (%s)",
+ "task:%u@%d xid=0x%08x %sv%d %s error=%ld (%s)",
__entry->task_id, __entry->client_id, __entry->xid,
- -__entry->error, nfs_show_status(__entry->error)
+ __get_str(program), __entry->version,
+ __get_str(procedure), -__entry->error,
+ nfs_show_status(__entry->error)
)
);