cregit-Linux how code gets into the kernel

Release 4.12 include/trace/events/vsock_virtio_transport_common.h


#undef TRACE_SYSTEM

#define TRACE_SYSTEM vsock

#if !defined(_TRACE_VSOCK_VIRTIO_TRANSPORT_COMMON_H) || \
    defined(TRACE_HEADER_MULTI_READ)

#define _TRACE_VSOCK_VIRTIO_TRANSPORT_COMMON_H

#include <linux/tracepoint.h>


TRACE_DEFINE_ENUM(VIRTIO_VSOCK_TYPE_STREAM);


#define show_type(val) \
	__print_symbolic(val, { VIRTIO_VSOCK_TYPE_STREAM, "STREAM" })


TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_INVALID);

TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_REQUEST);

TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_RESPONSE);

TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_RST);

TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_SHUTDOWN);

TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_RW);

TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_CREDIT_UPDATE);

TRACE_DEFINE_ENUM(VIRTIO_VSOCK_OP_CREDIT_REQUEST);


#define show_op(val) \
	__print_symbolic(val, \
                         { VIRTIO_VSOCK_OP_INVALID, "INVALID" }, \
                         { VIRTIO_VSOCK_OP_REQUEST, "REQUEST" }, \
                         { VIRTIO_VSOCK_OP_RESPONSE, "RESPONSE" }, \
                         { VIRTIO_VSOCK_OP_RST, "RST" }, \
                         { VIRTIO_VSOCK_OP_SHUTDOWN, "SHUTDOWN" }, \
                         { VIRTIO_VSOCK_OP_RW, "RW" }, \
                         { VIRTIO_VSOCK_OP_CREDIT_UPDATE, "CREDIT_UPDATE" }, \
                         { VIRTIO_VSOCK_OP_CREDIT_REQUEST, "CREDIT_REQUEST" })

TRACE_EVENT(virtio_transport_alloc_pkt,
	TP_PROTO(
                 __u32 src_cid, __u32 src_port,
                 __u32 dst_cid, __u32 dst_port,
                 __u32 len,
                 __u16 type,
                 __u16 op,
                 __u32 flags
        ),
	TP_ARGS(
                src_cid, src_port,
                dst_cid, dst_port,
                len,
                type,
                op,
                flags
        ),
	TP_STRUCT__entry(
                __field(__u32, src_cid)
                __field(__u32, src_port)
                __field(__u32, dst_cid)
                __field(__u32, dst_port)
                __field(__u32, len)
                __field(__u16, type)
                __field(__u16, op)
                __field(__u32, flags)
        ),
	TP_fast_assign(
                __entry->src_cid = src_cid;
                __entry->src_port = src_port;
                __entry->dst_cid = dst_cid;
                __entry->dst_port = dst_port;
                __entry->len = len;
                __entry->type = type;
                __entry->op = op;
                __entry->flags = flags;
        ),
	TP_printk("%u:%u -> %u:%u len=%u type=%s op=%s flags=%#x",
                  __entry->src_cid, __entry->src_port,
                  __entry->dst_cid, __entry->dst_port,
                  __entry->len,
                  show_type(__entry->type),
                  show_op(__entry->op),
                  __entry->flags)
);

TRACE_EVENT(virtio_transport_recv_pkt,
	TP_PROTO(
                 __u32 src_cid, __u32 src_port,
                 __u32 dst_cid, __u32 dst_port,
                 __u32 len,
                 __u16 type,
                 __u16 op,
                 __u32 flags,
                 __u32 buf_alloc,
                 __u32 fwd_cnt
        ),
	TP_ARGS(
                src_cid, src_port,
                dst_cid, dst_port,
                len,
                type,
                op,
                flags,
                buf_alloc,
                fwd_cnt
        ),
	TP_STRUCT__entry(
                __field(__u32, src_cid)
                __field(__u32, src_port)
                __field(__u32, dst_cid)
                __field(__u32, dst_port)
                __field(__u32, len)
                __field(__u16, type)
                __field(__u16, op)
                __field(__u32, flags)
                __field(__u32, buf_alloc)
                __field(__u32, fwd_cnt)
        ),
	TP_fast_assign(
                __entry->src_cid = src_cid;
                __entry->src_port = src_port;
                __entry->dst_cid = dst_cid;
                __entry->dst_port = dst_port;
                __entry->len = len;
                __entry->type = type;
                __entry->op = op;
                __entry->flags = flags;
                __entry->buf_alloc = buf_alloc;
                __entry->fwd_cnt = fwd_cnt;
        ),
	TP_printk("%u:%u -> %u:%u len=%u type=%s op=%s flags=%#x "
		  "buf_alloc=%u fwd_cnt=%u",
                  __entry->src_cid, __entry->src_port,
                  __entry->dst_cid, __entry->dst_port,
                  __entry->len,
                  show_type(__entry->type),
                  show_op(__entry->op),
                  __entry->flags,
                  __entry->buf_alloc,
                  __entry->fwd_cnt)
);

#endif /* _TRACE_VSOCK_VIRTIO_TRANSPORT_COMMON_H */


#undef TRACE_INCLUDE_FILE

#define TRACE_INCLUDE_FILE vsock_virtio_transport_common

/* This part must be outside protection */
#include <trace/define_trace.h>

Overall Contributors

PersonTokensPropCommitsCommitProp
Asias He136100.00%1100.00%
Total136100.00%1100.00%
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
Created with cregit.