]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/blame - include/trace/events/vsock_virtio_transport_common.h
Merge tag 'imx-fixes-5.15-4' of git://git.kernel.org/pub/scm/linux/kernel/git/shawngu...
[mirror_ubuntu-jammy-kernel.git] / include / trace / events / vsock_virtio_transport_common.h
CommitLineData
b2441318 1/* SPDX-License-Identifier: GPL-2.0 */
06a8fc78
AH
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);
184039ee 12TRACE_DEFINE_ENUM(VIRTIO_VSOCK_TYPE_SEQPACKET);
06a8fc78
AH
13
14#define show_type(val) \
184039ee
AK
15 __print_symbolic(val, \
16 { VIRTIO_VSOCK_TYPE_STREAM, "STREAM" }, \
17 { VIRTIO_VSOCK_TYPE_SEQPACKET, "SEQPACKET" })
06a8fc78
AH
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 ),
48 TP_ARGS(
49 src_cid, src_port,
50 dst_cid, dst_port,
51 len,
52 type,
53 op,
54 flags
55 ),
56 TP_STRUCT__entry(
57 __field(__u32, src_cid)
58 __field(__u32, src_port)
59 __field(__u32, dst_cid)
60 __field(__u32, dst_port)
61 __field(__u32, len)
62 __field(__u16, type)
63 __field(__u16, op)
64 __field(__u32, flags)
65 ),
66 TP_fast_assign(
67 __entry->src_cid = src_cid;
68 __entry->src_port = src_port;
69 __entry->dst_cid = dst_cid;
70 __entry->dst_port = dst_port;
71 __entry->len = len;
72 __entry->type = type;
73 __entry->op = op;
74 __entry->flags = flags;
75 ),
76 TP_printk("%u:%u -> %u:%u len=%u type=%s op=%s flags=%#x",
77 __entry->src_cid, __entry->src_port,
78 __entry->dst_cid, __entry->dst_port,
79 __entry->len,
80 show_type(__entry->type),
81 show_op(__entry->op),
82 __entry->flags)
83);
84
85TRACE_EVENT(virtio_transport_recv_pkt,
86 TP_PROTO(
87 __u32 src_cid, __u32 src_port,
88 __u32 dst_cid, __u32 dst_port,
89 __u32 len,
90 __u16 type,
91 __u16 op,
92 __u32 flags,
93 __u32 buf_alloc,
94 __u32 fwd_cnt
95 ),
96 TP_ARGS(
97 src_cid, src_port,
98 dst_cid, dst_port,
99 len,
100 type,
101 op,
102 flags,
103 buf_alloc,
104 fwd_cnt
105 ),
106 TP_STRUCT__entry(
107 __field(__u32, src_cid)
108 __field(__u32, src_port)
109 __field(__u32, dst_cid)
110 __field(__u32, dst_port)
111 __field(__u32, len)
112 __field(__u16, type)
113 __field(__u16, op)
114 __field(__u32, flags)
115 __field(__u32, buf_alloc)
116 __field(__u32, fwd_cnt)
117 ),
118 TP_fast_assign(
119 __entry->src_cid = src_cid;
120 __entry->src_port = src_port;
121 __entry->dst_cid = dst_cid;
122 __entry->dst_port = dst_port;
123 __entry->len = len;
124 __entry->type = type;
125 __entry->op = op;
126 __entry->flags = flags;
127 __entry->buf_alloc = buf_alloc;
128 __entry->fwd_cnt = fwd_cnt;
129 ),
130 TP_printk("%u:%u -> %u:%u len=%u type=%s op=%s flags=%#x "
131 "buf_alloc=%u fwd_cnt=%u",
132 __entry->src_cid, __entry->src_port,
133 __entry->dst_cid, __entry->dst_port,
134 __entry->len,
135 show_type(__entry->type),
136 show_op(__entry->op),
137 __entry->flags,
138 __entry->buf_alloc,
139 __entry->fwd_cnt)
140);
141
142#endif /* _TRACE_VSOCK_VIRTIO_TRANSPORT_COMMON_H */
143
144#undef TRACE_INCLUDE_FILE
145#define TRACE_INCLUDE_FILE vsock_virtio_transport_common
146
147/* This part must be outside protection */
148#include <trace/define_trace.h>