Linux Audio

Check our new training course

Loading...
Note: File does not exist in v3.1.
  1#undef TRACE_SYSTEM
  2#define TRACE_SYSTEM sunrpc
  3
  4#if !defined(_TRACE_SUNRPC_H) || defined(TRACE_HEADER_MULTI_READ)
  5#define _TRACE_SUNRPC_H
  6
  7#include <linux/sunrpc/sched.h>
  8#include <linux/sunrpc/clnt.h>
  9#include <linux/tracepoint.h>
 10
 11DECLARE_EVENT_CLASS(rpc_task_status,
 12
 13	TP_PROTO(struct rpc_task *task),
 14
 15	TP_ARGS(task),
 16
 17	TP_STRUCT__entry(
 18		__field(const struct rpc_task *, task)
 19		__field(const struct rpc_clnt *, clnt)
 20		__field(int, status)
 21	),
 22
 23	TP_fast_assign(
 24		__entry->task = task;
 25		__entry->clnt = task->tk_client;
 26		__entry->status = task->tk_status;
 27	),
 28
 29	TP_printk("task:%p@%p, status %d",__entry->task, __entry->clnt, __entry->status)
 30);
 31
 32DEFINE_EVENT(rpc_task_status, rpc_call_status,
 33	TP_PROTO(struct rpc_task *task),
 34
 35	TP_ARGS(task)
 36);
 37
 38DEFINE_EVENT(rpc_task_status, rpc_bind_status,
 39	TP_PROTO(struct rpc_task *task),
 40
 41	TP_ARGS(task)
 42);
 43
 44TRACE_EVENT(rpc_connect_status,
 45	TP_PROTO(struct rpc_task *task, int status),
 46
 47	TP_ARGS(task, status),
 48
 49	TP_STRUCT__entry(
 50		__field(const struct rpc_task *, task)
 51		__field(const struct rpc_clnt *, clnt)
 52		__field(int, status)
 53	),
 54
 55	TP_fast_assign(
 56		__entry->task = task;
 57		__entry->clnt = task->tk_client;
 58		__entry->status = status;
 59	),
 60
 61	TP_printk("task:%p@%p, status %d",__entry->task, __entry->clnt, __entry->status)
 62);
 63
 64DECLARE_EVENT_CLASS(rpc_task_running,
 65
 66	TP_PROTO(const struct rpc_clnt *clnt, const struct rpc_task *task, const void *action),
 67
 68	TP_ARGS(clnt, task, action),
 69
 70	TP_STRUCT__entry(
 71		__field(const struct rpc_clnt *, clnt)
 72		__field(const struct rpc_task *, task)
 73		__field(const void *, action)
 74		__field(unsigned long, runstate)
 75		__field(int, status)
 76		__field(unsigned short, flags)
 77		),
 78
 79	TP_fast_assign(
 80		__entry->clnt = clnt;
 81		__entry->task = task;
 82		__entry->action = action;
 83		__entry->runstate = task->tk_runstate;
 84		__entry->status = task->tk_status;
 85		__entry->flags = task->tk_flags;
 86		),
 87
 88	TP_printk("task:%p@%p flags=%4.4x state=%4.4lx status=%d action=%pf",
 89		__entry->task,
 90		__entry->clnt,
 91		__entry->flags,
 92		__entry->runstate,
 93		__entry->status,
 94		__entry->action
 95		)
 96);
 97
 98DEFINE_EVENT(rpc_task_running, rpc_task_begin,
 99
100	TP_PROTO(const struct rpc_clnt *clnt, const struct rpc_task *task, const void *action),
101
102	TP_ARGS(clnt, task, action)
103
104);
105
106DEFINE_EVENT(rpc_task_running, rpc_task_run_action,
107
108	TP_PROTO(const struct rpc_clnt *clnt, const struct rpc_task *task, const void *action),
109
110	TP_ARGS(clnt, task, action)
111
112);
113
114DEFINE_EVENT(rpc_task_running, rpc_task_complete,
115
116	TP_PROTO(const struct rpc_clnt *clnt, const struct rpc_task *task, const void *action),
117
118	TP_ARGS(clnt, task, action)
119
120);
121
122DECLARE_EVENT_CLASS(rpc_task_queued,
123
124	TP_PROTO(const struct rpc_clnt *clnt, const struct rpc_task *task, const struct rpc_wait_queue *q),
125
126	TP_ARGS(clnt, task, q),
127
128	TP_STRUCT__entry(
129		__field(const struct rpc_clnt *, clnt)
130		__field(const struct rpc_task *, task)
131		__field(unsigned long, timeout)
132		__field(unsigned long, runstate)
133		__field(int, status)
134		__field(unsigned short, flags)
135		__string(q_name, rpc_qname(q))
136		),
137
138	TP_fast_assign(
139		__entry->clnt = clnt;
140		__entry->task = task;
141		__entry->timeout = task->tk_timeout;
142		__entry->runstate = task->tk_runstate;
143		__entry->status = task->tk_status;
144		__entry->flags = task->tk_flags;
145		__assign_str(q_name, rpc_qname(q));
146		),
147
148	TP_printk("task:%p@%p flags=%4.4x state=%4.4lx status=%d timeout=%lu queue=%s",
149		__entry->task,
150		__entry->clnt,
151		__entry->flags,
152		__entry->runstate,
153		__entry->status,
154		__entry->timeout,
155		__get_str(q_name)
156		)
157);
158
159DEFINE_EVENT(rpc_task_queued, rpc_task_sleep,
160
161	TP_PROTO(const struct rpc_clnt *clnt, const struct rpc_task *task, const struct rpc_wait_queue *q),
162
163	TP_ARGS(clnt, task, q)
164
165);
166
167DEFINE_EVENT(rpc_task_queued, rpc_task_wakeup,
168
169	TP_PROTO(const struct rpc_clnt *clnt, const struct rpc_task *task, const struct rpc_wait_queue *q),
170
171	TP_ARGS(clnt, task, q)
172
173);
174
175#endif /* _TRACE_SUNRPC_H */
176
177#include <trace/define_trace.h>