SUNRPC: Display RPC procedure names instead of proc numbers
authorChuck Lever <chuck.lever@oracle.com>
Thu, 3 Dec 2020 15:22:09 +0000 (10:22 -0500)
committerChuck Lever <chuck.lever@oracle.com>
Mon, 25 Jan 2021 14:36:23 +0000 (09:36 -0500)
Make the sunrpc trace subsystem trace events easier to use.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
include/trace/events/sunrpc.h

index 6f89c27..036eb1f 100644 (file)
@@ -1603,6 +1603,7 @@ TRACE_EVENT(svc_process,
                __field(u32, vers)
                __field(u32, proc)
                __string(service, name)
+               __string(procedure, rqst->rq_procinfo->pc_name)
                __string(addr, rqst->rq_xprt ?
                         rqst->rq_xprt->xpt_remotebuf : "(null)")
        ),
@@ -1612,13 +1613,16 @@ TRACE_EVENT(svc_process,
                __entry->vers = rqst->rq_vers;
                __entry->proc = rqst->rq_proc;
                __assign_str(service, name);
+               __assign_str(procedure, rqst->rq_procinfo->pc_name);
                __assign_str(addr, rqst->rq_xprt ?
                             rqst->rq_xprt->xpt_remotebuf : "(null)");
        ),
 
-       TP_printk("addr=%s xid=0x%08x service=%s vers=%u proc=%u",
+       TP_printk("addr=%s xid=0x%08x service=%s vers=%u proc=%s",
                        __get_str(addr), __entry->xid,
-                       __get_str(service), __entry->vers, __entry->proc)
+                       __get_str(service), __entry->vers,
+                       __get_str(procedure)
+       )
 );
 
 DECLARE_EVENT_CLASS(svc_rqst_event,
@@ -1874,6 +1878,7 @@ TRACE_EVENT(svc_stats_latency,
        TP_STRUCT__entry(
                __field(u32, xid)
                __field(unsigned long, execute)
+               __string(procedure, rqst->rq_procinfo->pc_name)
                __string(addr, rqst->rq_xprt->xpt_remotebuf)
        ),
 
@@ -1881,11 +1886,13 @@ TRACE_EVENT(svc_stats_latency,
                __entry->xid = be32_to_cpu(rqst->rq_xid);
                __entry->execute = ktime_to_us(ktime_sub(ktime_get(),
                                                         rqst->rq_stime));
+               __assign_str(procedure, rqst->rq_procinfo->pc_name);
                __assign_str(addr, rqst->rq_xprt->xpt_remotebuf);
        ),
 
-       TP_printk("addr=%s xid=0x%08x execute-us=%lu",
-               __get_str(addr), __entry->xid, __entry->execute)
+       TP_printk("addr=%s xid=0x%08x proc=%s execute-us=%lu",
+               __get_str(addr), __entry->xid, __get_str(procedure),
+               __entry->execute)
 );
 
 DECLARE_EVENT_CLASS(svc_deferred_event,