xprtrdma: Clean up trace_xprtrdma_post_linv
authorChuck Lever <chuck.lever@oracle.com>
Mon, 9 Nov 2020 19:39:37 +0000 (14:39 -0500)
committerAnna Schumaker <Anna.Schumaker@Netapp.com>
Wed, 11 Nov 2020 15:26:06 +0000 (10:26 -0500)
- Replace the display of kernel memory addresses
- Add "_err" to the end of its name to indicate that it's a
  tracepoint that fires only when there's an error

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
include/trace/events/rpcrdma.h
net/sunrpc/xprtrdma/frwr_ops.c

index 9e30f8aa3562e119c7349e129df1a3e41928ed15..b0750c0d2753e84abf9b3397a3e66ded00d7a439 100644 (file)
@@ -784,7 +784,7 @@ TRACE_EVENT(xprtrdma_post_recvs,
        )
 );
 
-TRACE_EVENT(xprtrdma_post_linv,
+TRACE_EVENT(xprtrdma_post_linv_err,
        TP_PROTO(
                const struct rpcrdma_req *req,
                int status
@@ -793,19 +793,21 @@ TRACE_EVENT(xprtrdma_post_linv,
        TP_ARGS(req, status),
 
        TP_STRUCT__entry(
-               __field(const void *, req)
+               __field(unsigned int, task_id)
+               __field(unsigned int, client_id)
                __field(int, status)
-               __field(u32, xid)
        ),
 
        TP_fast_assign(
-               __entry->req = req;
+               const struct rpc_task *task = req->rl_slot.rq_task;
+
+               __entry->task_id = task->tk_pid;
+               __entry->client_id = task->tk_client->cl_clid;
                __entry->status = status;
-               __entry->xid = be32_to_cpu(req->rl_slot.rq_xid);
        ),
 
-       TP_printk("req=%p xid=0x%08x status=%d",
-               __entry->req, __entry->xid, __entry->status
+       TP_printk("task:%u@%u status=%d",
+               __entry->task_id, __entry->client_id, __entry->status
        )
 );
 
index 2cc6862a52dc1028c35ab372bd62dae4c5359d0e..76322b1acf3d62f59846f99089dd2cab67cae598 100644 (file)
@@ -560,7 +560,7 @@ void frwr_unmap_sync(struct rpcrdma_xprt *r_xprt, struct rpcrdma_req *req)
 
        /* Recycle MRs in the LOCAL_INV chain that did not get posted.
         */
-       trace_xprtrdma_post_linv(req, rc);
+       trace_xprtrdma_post_linv_err(req, rc);
        while (bad_wr) {
                frwr = container_of(bad_wr, struct rpcrdma_frwr,
                                    fr_invwr);
@@ -660,7 +660,7 @@ void frwr_unmap_async(struct rpcrdma_xprt *r_xprt, struct rpcrdma_req *req)
 
        /* Recycle MRs in the LOCAL_INV chain that did not get posted.
         */
-       trace_xprtrdma_post_linv(req, rc);
+       trace_xprtrdma_post_linv_err(req, rc);
        while (bad_wr) {
                frwr = container_of(bad_wr, struct rpcrdma_frwr, fr_invwr);
                mr = container_of(frwr, struct rpcrdma_mr, frwr);