The reporting of the RPC queue name needs to use the __string() event interface.
Showing the changes to include/trace (1 of 1 file). Show all
Unified · Split
| @@ -75,21 +75,21 @@ DECLARE_EVENT_CLASS(rpc_task_queued, · 74 unmodified lines | ||
| 75 | 75 | TP_STRUCT__entry( |
| 76 | 76 | __field(const struct rpc_clnt *, clnt) |
| 77 | 77 | __field(const struct rpc_task *, task) |
| 78 | − __field(const struct rpc_wait_queue *, queue) | |
| 79 | 78 | __field(unsigned long, timeout) |
| 80 | 79 | __field(unsigned long, runstate) |
| 81 | 80 | __field(int, status) |
| 82 | 81 | __field(unsigned short, flags) |
| 82 | + __string(q_name, rpc_qname(q)) | |
| 83 | 83 | ), |
| 84 | 84 | |
| 85 | 85 | TP_fast_assign( |
| 86 | 86 | __entry->clnt = clnt; |
| 87 | 87 | __entry->task = task; |
| 88 | − __entry->queue = q; | |
| 89 | 88 | __entry->timeout = task->tk_timeout; |
| 90 | 89 | __entry->runstate = task->tk_runstate; |
| 91 | 90 | __entry->status = task->tk_status; |
| 92 | 91 | __entry->flags = task->tk_flags; |
| 92 | + __assign_str(q_name, rpc_qname(q)); | |
| 93 | 93 | ), |
| 94 | 94 | |
| 95 | 95 | 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, · 3 unmodified lines | ||
| 99 | 99 | __entry->runstate, |
| 100 | 100 | __entry->status, |
| 101 | 101 | __entry->timeout, |
| 102 | − rpc_qname(__entry->queue) | |
| 102 | + __get_str(q_name) | |
| 103 | 103 | ) |
| 104 | 104 | ); |
| 105 | 105 | |