]>
Commit | Line | Data |
---|---|---|
ea106722 MM |
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 | ||
2abd2de7 AH |
10 | DECLARE_EVENT_CLASS(nbd_transport_event, |
11 | ||
12 | TP_PROTO(struct request *req, u64 handle), | |
13 | ||
14 | TP_ARGS(req, handle), | |
15 | ||
16 | TP_STRUCT__entry( | |
17 | __field(struct request *, req) | |
18 | __field(u64, handle) | |
19 | ), | |
20 | ||
21 | TP_fast_assign( | |
22 | __entry->req = req; | |
23 | __entry->handle = handle; | |
24 | ), | |
25 | ||
26 | TP_printk( | |
27 | "nbd transport event: request %p, handle 0x%016llx", | |
28 | __entry->req, | |
29 | __entry->handle | |
30 | ) | |
31 | ); | |
32 | ||
33 | DEFINE_EVENT(nbd_transport_event, nbd_header_sent, | |
34 | ||
35 | TP_PROTO(struct request *req, u64 handle), | |
36 | ||
37 | TP_ARGS(req, handle) | |
38 | ); | |
39 | ||
40 | DEFINE_EVENT(nbd_transport_event, nbd_payload_sent, | |
41 | ||
42 | TP_PROTO(struct request *req, u64 handle), | |
43 | ||
44 | TP_ARGS(req, handle) | |
45 | ); | |
46 | ||
47 | DEFINE_EVENT(nbd_transport_event, nbd_header_received, | |
48 | ||
49 | TP_PROTO(struct request *req, u64 handle), | |
50 | ||
51 | TP_ARGS(req, handle) | |
52 | ); | |
53 | ||
54 | DEFINE_EVENT(nbd_transport_event, nbd_payload_received, | |
55 | ||
56 | TP_PROTO(struct request *req, u64 handle), | |
57 | ||
58 | TP_ARGS(req, handle) | |
59 | ); | |
60 | ||
ea106722 MM |
61 | DECLARE_EVENT_CLASS(nbd_send_request, |
62 | ||
63 | TP_PROTO(struct nbd_request *nbd_request, int index, | |
64 | struct request *rq), | |
65 | ||
66 | TP_ARGS(nbd_request, index, rq), | |
67 | ||
68 | TP_STRUCT__entry( | |
69 | __field(struct nbd_request *, nbd_request) | |
70 | __field(u64, dev_index) | |
71 | __field(struct request *, request) | |
72 | ), | |
73 | ||
74 | TP_fast_assign( | |
75 | __entry->nbd_request = 0; | |
76 | __entry->dev_index = index; | |
77 | __entry->request = rq; | |
78 | ), | |
79 | ||
80 | TP_printk("nbd%lld: request %p", __entry->dev_index, __entry->request) | |
81 | ); | |
82 | ||
83 | #ifdef DEFINE_EVENT_WRITABLE | |
84 | #undef NBD_DEFINE_EVENT | |
85 | #define NBD_DEFINE_EVENT(template, call, proto, args, size) \ | |
86 | DEFINE_EVENT_WRITABLE(template, call, PARAMS(proto), \ | |
87 | PARAMS(args), size) | |
88 | #else | |
89 | #undef NBD_DEFINE_EVENT | |
90 | #define NBD_DEFINE_EVENT(template, call, proto, args, size) \ | |
91 | DEFINE_EVENT(template, call, PARAMS(proto), PARAMS(args)) | |
92 | #endif | |
93 | ||
94 | NBD_DEFINE_EVENT(nbd_send_request, nbd_send_request, | |
95 | ||
96 | TP_PROTO(struct nbd_request *nbd_request, int index, | |
97 | struct request *rq), | |
98 | ||
99 | TP_ARGS(nbd_request, index, rq), | |
100 | ||
101 | sizeof(struct nbd_request) | |
102 | ); | |
103 | ||
104 | #endif | |
105 | ||
106 | /* This part must be outside protection */ | |
107 | #include <trace/define_trace.h> |