Linux Audio

Check our new training course

Linux kernel drivers training

Mar 31-Apr 9, 2025, special US time zones
Register
Loading...
Note: File does not exist in v3.1.
  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>