SUNRPC: Fix up sunrpc trace events
authorTrond Myklebust <Trond.Myklebust@netapp.com>
Mon, 6 Feb 2012 15:31:35 +0000 (10:31 -0500)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Mon, 6 Feb 2012 15:31:35 +0000 (10:31 -0500)
The reporting of the RPC queue name needs to use the __string()
event interface.

Reported-by: Neil Horman <nhorman@redhat.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
include/trace/events/sunrpc.h

index 51cc949..ec8668d 100644 (file)
@@ -75,21 +75,21 @@ DECLARE_EVENT_CLASS(rpc_task_queued,
        TP_STRUCT__entry(
                __field(const struct rpc_clnt *, clnt)
                __field(const struct rpc_task *, task)
-               __field(const struct rpc_wait_queue *, queue)
                __field(unsigned long, timeout)
                __field(unsigned long, runstate)
                __field(int, status)
                __field(unsigned short, flags)
+               __string(q_name, rpc_qname(q))
                ),
 
        TP_fast_assign(
                __entry->clnt = clnt;
                __entry->task = task;
-               __entry->queue = q;
                __entry->timeout = task->tk_timeout;
                __entry->runstate = task->tk_runstate;
                __entry->status = task->tk_status;
                __entry->flags = task->tk_flags;
+               __assign_str(q_name, rpc_qname(q));
                ),
 
        TP_printk("task:%p@%p flags=%4.4x state=%4.4lx status=%d timeout=%lu queue=%s",
@@ -99,7 +99,7 @@ DECLARE_EVENT_CLASS(rpc_task_queued,
                __entry->runstate,
                __entry->status,
                __entry->timeout,
-               rpc_qname(__entry->queue)
+               __get_str(q_name)
                )
 );