xref: /openbmc/linux/include/trace/events/nbd.h (revision ea106722)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #undef TRACE_SYSTEM
3 #define TRACE_SYSTEM nbd
4 
5 #if !defined(_TRACE_NBD_H) || defined(TRACE_HEADER_MULTI_READ)
6 #define _TRACE_NBD_H
7 
8 #include <linux/tracepoint.h>
9 
10 DECLARE_EVENT_CLASS(nbd_send_request,
11 
12 	TP_PROTO(struct nbd_request *nbd_request, int index,
13 		 struct request *rq),
14 
15 	TP_ARGS(nbd_request, index, rq),
16 
17 	TP_STRUCT__entry(
18 		__field(struct nbd_request *, nbd_request)
19 		__field(u64, dev_index)
20 		__field(struct request *, request)
21 	),
22 
23 	TP_fast_assign(
24 		__entry->nbd_request = 0;
25 		__entry->dev_index = index;
26 		__entry->request = rq;
27 	),
28 
29 	TP_printk("nbd%lld: request %p", __entry->dev_index, __entry->request)
30 );
31 
32 #ifdef DEFINE_EVENT_WRITABLE
33 #undef NBD_DEFINE_EVENT
34 #define NBD_DEFINE_EVENT(template, call, proto, args, size)		\
35 	DEFINE_EVENT_WRITABLE(template, call, PARAMS(proto),		\
36 			      PARAMS(args), size)
37 #else
38 #undef NBD_DEFINE_EVENT
39 #define NBD_DEFINE_EVENT(template, call, proto, args, size)		\
40 	DEFINE_EVENT(template, call, PARAMS(proto), PARAMS(args))
41 #endif
42 
43 NBD_DEFINE_EVENT(nbd_send_request, nbd_send_request,
44 
45 	TP_PROTO(struct nbd_request *nbd_request, int index,
46 		 struct request *rq),
47 
48 	TP_ARGS(nbd_request, index, rq),
49 
50 	sizeof(struct nbd_request)
51 );
52 
53 #endif
54 
55 /* This part must be outside protection */
56 #include <trace/define_trace.h>
57