SUNRPC: Add tracepoint to rpc_call_rpcerror()
Add a tracepoint in another common exit point for failing RPCs. Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
This commit is contained in:
committed by
Anna Schumaker
parent
82909dc546
commit
0125ecbb52
@ -365,6 +365,34 @@ DEFINE_RPC_REPLY_EVENT(stale_creds);
|
|||||||
DEFINE_RPC_REPLY_EVENT(bad_creds);
|
DEFINE_RPC_REPLY_EVENT(bad_creds);
|
||||||
DEFINE_RPC_REPLY_EVENT(auth_tooweak);
|
DEFINE_RPC_REPLY_EVENT(auth_tooweak);
|
||||||
|
|
||||||
|
TRACE_EVENT(rpc_call_rpcerror,
|
||||||
|
TP_PROTO(
|
||||||
|
const struct rpc_task *task,
|
||||||
|
int tk_status,
|
||||||
|
int rpc_status
|
||||||
|
),
|
||||||
|
|
||||||
|
TP_ARGS(task, tk_status, rpc_status),
|
||||||
|
|
||||||
|
TP_STRUCT__entry(
|
||||||
|
__field(unsigned int, task_id)
|
||||||
|
__field(unsigned int, client_id)
|
||||||
|
__field(int, tk_status)
|
||||||
|
__field(int, rpc_status)
|
||||||
|
),
|
||||||
|
|
||||||
|
TP_fast_assign(
|
||||||
|
__entry->client_id = task->tk_client->cl_clid;
|
||||||
|
__entry->task_id = task->tk_pid;
|
||||||
|
__entry->tk_status = tk_status;
|
||||||
|
__entry->rpc_status = rpc_status;
|
||||||
|
),
|
||||||
|
|
||||||
|
TP_printk("task:%u@%u tk_status=%d rpc_status=%d",
|
||||||
|
__entry->task_id, __entry->client_id,
|
||||||
|
__entry->tk_status, __entry->rpc_status)
|
||||||
|
);
|
||||||
|
|
||||||
TRACE_EVENT(rpc_stats_latency,
|
TRACE_EVENT(rpc_stats_latency,
|
||||||
|
|
||||||
TP_PROTO(
|
TP_PROTO(
|
||||||
|
@ -1624,6 +1624,7 @@ const char
|
|||||||
static void
|
static void
|
||||||
__rpc_call_rpcerror(struct rpc_task *task, int tk_status, int rpc_status)
|
__rpc_call_rpcerror(struct rpc_task *task, int tk_status, int rpc_status)
|
||||||
{
|
{
|
||||||
|
trace_rpc_call_rpcerror(task, tk_status, rpc_status);
|
||||||
task->tk_rpc_status = rpc_status;
|
task->tk_rpc_status = rpc_status;
|
||||||
rpc_exit(task, tk_status);
|
rpc_exit(task, tk_status);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user