nbd.h (2185B)
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 10DECLARE_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 33DEFINE_EVENT(nbd_transport_event, nbd_header_sent, 34 35 TP_PROTO(struct request *req, u64 handle), 36 37 TP_ARGS(req, handle) 38); 39 40DEFINE_EVENT(nbd_transport_event, nbd_payload_sent, 41 42 TP_PROTO(struct request *req, u64 handle), 43 44 TP_ARGS(req, handle) 45); 46 47DEFINE_EVENT(nbd_transport_event, nbd_header_received, 48 49 TP_PROTO(struct request *req, u64 handle), 50 51 TP_ARGS(req, handle) 52); 53 54DEFINE_EVENT(nbd_transport_event, nbd_payload_received, 55 56 TP_PROTO(struct request *req, u64 handle), 57 58 TP_ARGS(req, handle) 59); 60 61DECLARE_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 94NBD_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>