Commit 5be59458 authored by Chuck Lever's avatar Chuck Lever Committed by Anna Schumaker
Browse files

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: default avatarChuck Lever <chuck.lever@oracle.com>
Signed-off-by: default avatarAnna Schumaker <Anna.Schumaker@Netapp.com>
parent 841a2ed9
Loading
Loading
Loading
Loading
+13 −2
Original line number Diff line number Diff line
@@ -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)
		)
);