Linux Audio

Check our new training course

Loading...
v6.13.7
  1/* SPDX-License-Identifier: GPL-2.0 */
  2#undef TRACE_SYSTEM
  3#define TRACE_SYSTEM vsock
  4
  5#if !defined(_TRACE_VSOCK_VIRTIO_TRANSPORT_COMMON_H) || \
  6    defined(TRACE_HEADER_MULTI_READ)
  7#define _TRACE_VSOCK_VIRTIO_TRANSPORT_COMMON_H
  8
  9#include <linux/tracepoint.h>
 10
 11TRACE_DEFINE_ENUM(VIRTIO_VSOCK_TYPE_STREAM);
 12TRACE_DEFINE_ENUM(VIRTIO_VSOCK_TYPE_SEQPACKET);
 13
 14#define show_type(val) \
 15	__print_symbolic(val, \
 16			 { VIRTIO_VSOCK_TYPE_STREAM, "STREAM" }, \
 17			 { VIRTIO_VSOCK_TYPE_SEQPACKET, "SEQPACKET" })
 18
 19TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_INVALID);
 20TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_REQUEST);
 21TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_RESPONSE);
 22TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_RST);
 23TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_SHUTDOWN);
 24TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_RW);
 25TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_CREDIT_UPDATE);
 26TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_CREDIT_REQUEST);
 27
 28#define show_op(val) \
 29	__print_symbolic(val, \
 30			 { VIRTIO_VSOCK_OP_INVALID, "INVALID" }, \
 31			 { VIRTIO_VSOCK_OP_REQUEST, "REQUEST" }, \
 32			 { VIRTIO_VSOCK_OP_RESPONSE, "RESPONSE" }, \
 33			 { VIRTIO_VSOCK_OP_RST, "RST" }, \
 34			 { VIRTIO_VSOCK_OP_SHUTDOWN, "SHUTDOWN" }, \
 35			 { VIRTIO_VSOCK_OP_RW, "RW" }, \
 36			 { VIRTIO_VSOCK_OP_CREDIT_UPDATE, "CREDIT_UPDATE" }, \
 37			 { VIRTIO_VSOCK_OP_CREDIT_REQUEST, "CREDIT_REQUEST" })
 38
 39TRACE_EVENT(virtio_transport_alloc_pkt,
 40	TP_PROTO(
 41		 __u32 src_cid, __u32 src_port,
 42		 __u32 dst_cid, __u32 dst_port,
 43		 __u32 len,
 44		 __u16 type,
 45		 __u16 op,
 46		 __u32 flags,
 47		 bool zcopy
 48	),
 49	TP_ARGS(
 50		src_cid, src_port,
 51		dst_cid, dst_port,
 52		len,
 53		type,
 54		op,
 55		flags,
 56		zcopy
 57	),
 58	TP_STRUCT__entry(
 59		__field(__u32, src_cid)
 60		__field(__u32, src_port)
 61		__field(__u32, dst_cid)
 62		__field(__u32, dst_port)
 63		__field(__u32, len)
 64		__field(__u16, type)
 65		__field(__u16, op)
 66		__field(__u32, flags)
 67		__field(bool, zcopy)
 68	),
 69	TP_fast_assign(
 70		__entry->src_cid = src_cid;
 71		__entry->src_port = src_port;
 72		__entry->dst_cid = dst_cid;
 73		__entry->dst_port = dst_port;
 74		__entry->len = len;
 75		__entry->type = type;
 76		__entry->op = op;
 77		__entry->flags = flags;
 78		__entry->zcopy = zcopy;
 79	),
 80	TP_printk("%u:%u -> %u:%u len=%u type=%s op=%s flags=%#x zcopy=%s",
 81		  __entry->src_cid, __entry->src_port,
 82		  __entry->dst_cid, __entry->dst_port,
 83		  __entry->len,
 84		  show_type(__entry->type),
 85		  show_op(__entry->op),
 86		  __entry->flags, __entry->zcopy ? "true" : "false")
 87);
 88
 89TRACE_EVENT(virtio_transport_recv_pkt,
 90	TP_PROTO(
 91		 __u32 src_cid, __u32 src_port,
 92		 __u32 dst_cid, __u32 dst_port,
 93		 __u32 len,
 94		 __u16 type,
 95		 __u16 op,
 96		 __u32 flags,
 97		 __u32 buf_alloc,
 98		 __u32 fwd_cnt
 99	),
100	TP_ARGS(
101		src_cid, src_port,
102		dst_cid, dst_port,
103		len,
104		type,
105		op,
106		flags,
107		buf_alloc,
108		fwd_cnt
109	),
110	TP_STRUCT__entry(
111		__field(__u32, src_cid)
112		__field(__u32, src_port)
113		__field(__u32, dst_cid)
114		__field(__u32, dst_port)
115		__field(__u32, len)
116		__field(__u16, type)
117		__field(__u16, op)
118		__field(__u32, flags)
119		__field(__u32, buf_alloc)
120		__field(__u32, fwd_cnt)
121	),
122	TP_fast_assign(
123		__entry->src_cid = src_cid;
124		__entry->src_port = src_port;
125		__entry->dst_cid = dst_cid;
126		__entry->dst_port = dst_port;
127		__entry->len = len;
128		__entry->type = type;
129		__entry->op = op;
130		__entry->flags = flags;
131		__entry->buf_alloc = buf_alloc;
132		__entry->fwd_cnt = fwd_cnt;
133	),
134	TP_printk("%u:%u -> %u:%u len=%u type=%s op=%s flags=%#x "
135		  "buf_alloc=%u fwd_cnt=%u",
136		  __entry->src_cid, __entry->src_port,
137		  __entry->dst_cid, __entry->dst_port,
138		  __entry->len,
139		  show_type(__entry->type),
140		  show_op(__entry->op),
141		  __entry->flags,
142		  __entry->buf_alloc,
143		  __entry->fwd_cnt)
144);
145
146#endif /* _TRACE_VSOCK_VIRTIO_TRANSPORT_COMMON_H */
147
148#undef TRACE_INCLUDE_FILE
149#define TRACE_INCLUDE_FILE vsock_virtio_transport_common
150
151/* This part must be outside protection */
152#include <trace/define_trace.h>
v5.4
  1/* SPDX-License-Identifier: GPL-2.0 */
  2#undef TRACE_SYSTEM
  3#define TRACE_SYSTEM vsock
  4
  5#if !defined(_TRACE_VSOCK_VIRTIO_TRANSPORT_COMMON_H) || \
  6    defined(TRACE_HEADER_MULTI_READ)
  7#define _TRACE_VSOCK_VIRTIO_TRANSPORT_COMMON_H
  8
  9#include <linux/tracepoint.h>
 10
 11TRACE_DEFINE_ENUM(VIRTIO_VSOCK_TYPE_STREAM);
 
 12
 13#define show_type(val) \
 14	__print_symbolic(val, { VIRTIO_VSOCK_TYPE_STREAM, "STREAM" })
 
 
 15
 16TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_INVALID);
 17TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_REQUEST);
 18TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_RESPONSE);
 19TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_RST);
 20TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_SHUTDOWN);
 21TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_RW);
 22TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_CREDIT_UPDATE);
 23TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_CREDIT_REQUEST);
 24
 25#define show_op(val) \
 26	__print_symbolic(val, \
 27			 { VIRTIO_VSOCK_OP_INVALID, "INVALID" }, \
 28			 { VIRTIO_VSOCK_OP_REQUEST, "REQUEST" }, \
 29			 { VIRTIO_VSOCK_OP_RESPONSE, "RESPONSE" }, \
 30			 { VIRTIO_VSOCK_OP_RST, "RST" }, \
 31			 { VIRTIO_VSOCK_OP_SHUTDOWN, "SHUTDOWN" }, \
 32			 { VIRTIO_VSOCK_OP_RW, "RW" }, \
 33			 { VIRTIO_VSOCK_OP_CREDIT_UPDATE, "CREDIT_UPDATE" }, \
 34			 { VIRTIO_VSOCK_OP_CREDIT_REQUEST, "CREDIT_REQUEST" })
 35
 36TRACE_EVENT(virtio_transport_alloc_pkt,
 37	TP_PROTO(
 38		 __u32 src_cid, __u32 src_port,
 39		 __u32 dst_cid, __u32 dst_port,
 40		 __u32 len,
 41		 __u16 type,
 42		 __u16 op,
 43		 __u32 flags
 
 44	),
 45	TP_ARGS(
 46		src_cid, src_port,
 47		dst_cid, dst_port,
 48		len,
 49		type,
 50		op,
 51		flags
 
 52	),
 53	TP_STRUCT__entry(
 54		__field(__u32, src_cid)
 55		__field(__u32, src_port)
 56		__field(__u32, dst_cid)
 57		__field(__u32, dst_port)
 58		__field(__u32, len)
 59		__field(__u16, type)
 60		__field(__u16, op)
 61		__field(__u32, flags)
 
 62	),
 63	TP_fast_assign(
 64		__entry->src_cid = src_cid;
 65		__entry->src_port = src_port;
 66		__entry->dst_cid = dst_cid;
 67		__entry->dst_port = dst_port;
 68		__entry->len = len;
 69		__entry->type = type;
 70		__entry->op = op;
 71		__entry->flags = flags;
 
 72	),
 73	TP_printk("%u:%u -> %u:%u len=%u type=%s op=%s flags=%#x",
 74		  __entry->src_cid, __entry->src_port,
 75		  __entry->dst_cid, __entry->dst_port,
 76		  __entry->len,
 77		  show_type(__entry->type),
 78		  show_op(__entry->op),
 79		  __entry->flags)
 80);
 81
 82TRACE_EVENT(virtio_transport_recv_pkt,
 83	TP_PROTO(
 84		 __u32 src_cid, __u32 src_port,
 85		 __u32 dst_cid, __u32 dst_port,
 86		 __u32 len,
 87		 __u16 type,
 88		 __u16 op,
 89		 __u32 flags,
 90		 __u32 buf_alloc,
 91		 __u32 fwd_cnt
 92	),
 93	TP_ARGS(
 94		src_cid, src_port,
 95		dst_cid, dst_port,
 96		len,
 97		type,
 98		op,
 99		flags,
100		buf_alloc,
101		fwd_cnt
102	),
103	TP_STRUCT__entry(
104		__field(__u32, src_cid)
105		__field(__u32, src_port)
106		__field(__u32, dst_cid)
107		__field(__u32, dst_port)
108		__field(__u32, len)
109		__field(__u16, type)
110		__field(__u16, op)
111		__field(__u32, flags)
112		__field(__u32, buf_alloc)
113		__field(__u32, fwd_cnt)
114	),
115	TP_fast_assign(
116		__entry->src_cid = src_cid;
117		__entry->src_port = src_port;
118		__entry->dst_cid = dst_cid;
119		__entry->dst_port = dst_port;
120		__entry->len = len;
121		__entry->type = type;
122		__entry->op = op;
123		__entry->flags = flags;
124		__entry->buf_alloc = buf_alloc;
125		__entry->fwd_cnt = fwd_cnt;
126	),
127	TP_printk("%u:%u -> %u:%u len=%u type=%s op=%s flags=%#x "
128		  "buf_alloc=%u fwd_cnt=%u",
129		  __entry->src_cid, __entry->src_port,
130		  __entry->dst_cid, __entry->dst_port,
131		  __entry->len,
132		  show_type(__entry->type),
133		  show_op(__entry->op),
134		  __entry->flags,
135		  __entry->buf_alloc,
136		  __entry->fwd_cnt)
137);
138
139#endif /* _TRACE_VSOCK_VIRTIO_TRANSPORT_COMMON_H */
140
141#undef TRACE_INCLUDE_FILE
142#define TRACE_INCLUDE_FILE vsock_virtio_transport_common
143
144/* This part must be outside protection */
145#include <trace/define_trace.h>