14f9e1ba6SJeremy Kerr /* SPDX-License-Identifier: GPL-2.0 */ 24f9e1ba6SJeremy Kerr 34f9e1ba6SJeremy Kerr #undef TRACE_SYSTEM 44f9e1ba6SJeremy Kerr #define TRACE_SYSTEM mctp 54f9e1ba6SJeremy Kerr 64f9e1ba6SJeremy Kerr #if !defined(_TRACE_MCTP_H) || defined(TRACE_HEADER_MULTI_READ) 74f9e1ba6SJeremy Kerr #define _TRACE_MCTP_H 84f9e1ba6SJeremy Kerr 94f9e1ba6SJeremy Kerr #include <linux/tracepoint.h> 104f9e1ba6SJeremy Kerr 114f9e1ba6SJeremy Kerr #ifndef __TRACE_MCTP_ENUMS 124f9e1ba6SJeremy Kerr #define __TRACE_MCTP_ENUMS 134f9e1ba6SJeremy Kerr enum { 144f9e1ba6SJeremy Kerr MCTP_TRACE_KEY_TIMEOUT, 154f9e1ba6SJeremy Kerr MCTP_TRACE_KEY_REPLIED, 164f9e1ba6SJeremy Kerr MCTP_TRACE_KEY_INVALIDATED, 174f9e1ba6SJeremy Kerr MCTP_TRACE_KEY_CLOSED, 18*63ed1aabSMatt Johnston MCTP_TRACE_KEY_DROPPED, 194f9e1ba6SJeremy Kerr }; 204f9e1ba6SJeremy Kerr #endif /* __TRACE_MCTP_ENUMS */ 214f9e1ba6SJeremy Kerr 224f9e1ba6SJeremy Kerr TRACE_DEFINE_ENUM(MCTP_TRACE_KEY_TIMEOUT); 234f9e1ba6SJeremy Kerr TRACE_DEFINE_ENUM(MCTP_TRACE_KEY_REPLIED); 244f9e1ba6SJeremy Kerr TRACE_DEFINE_ENUM(MCTP_TRACE_KEY_INVALIDATED); 254f9e1ba6SJeremy Kerr TRACE_DEFINE_ENUM(MCTP_TRACE_KEY_CLOSED); 26*63ed1aabSMatt Johnston TRACE_DEFINE_ENUM(MCTP_TRACE_KEY_DROPPED); 274f9e1ba6SJeremy Kerr 284f9e1ba6SJeremy Kerr TRACE_EVENT(mctp_key_acquire, 294f9e1ba6SJeremy Kerr TP_PROTO(const struct mctp_sk_key *key), 304f9e1ba6SJeremy Kerr TP_ARGS(key), 314f9e1ba6SJeremy Kerr TP_STRUCT__entry( 324f9e1ba6SJeremy Kerr __field(__u8, paddr) 334f9e1ba6SJeremy Kerr __field(__u8, laddr) 344f9e1ba6SJeremy Kerr __field(__u8, tag) 354f9e1ba6SJeremy Kerr ), 364f9e1ba6SJeremy Kerr TP_fast_assign( 374f9e1ba6SJeremy Kerr __entry->paddr = key->peer_addr; 384f9e1ba6SJeremy Kerr __entry->laddr = key->local_addr; 394f9e1ba6SJeremy Kerr __entry->tag = key->tag; 404f9e1ba6SJeremy Kerr ), 414f9e1ba6SJeremy Kerr TP_printk("local %d, peer %d, tag %1x", 424f9e1ba6SJeremy Kerr __entry->laddr, 434f9e1ba6SJeremy Kerr __entry->paddr, 444f9e1ba6SJeremy Kerr __entry->tag 454f9e1ba6SJeremy Kerr ) 464f9e1ba6SJeremy Kerr ); 474f9e1ba6SJeremy Kerr 484f9e1ba6SJeremy Kerr TRACE_EVENT(mctp_key_release, 494f9e1ba6SJeremy Kerr TP_PROTO(const struct mctp_sk_key *key, int reason), 504f9e1ba6SJeremy Kerr TP_ARGS(key, reason), 514f9e1ba6SJeremy Kerr TP_STRUCT__entry( 524f9e1ba6SJeremy Kerr __field(__u8, paddr) 534f9e1ba6SJeremy Kerr __field(__u8, laddr) 544f9e1ba6SJeremy Kerr __field(__u8, tag) 554f9e1ba6SJeremy Kerr __field(int, reason) 564f9e1ba6SJeremy Kerr ), 574f9e1ba6SJeremy Kerr TP_fast_assign( 584f9e1ba6SJeremy Kerr __entry->paddr = key->peer_addr; 594f9e1ba6SJeremy Kerr __entry->laddr = key->local_addr; 604f9e1ba6SJeremy Kerr __entry->tag = key->tag; 614f9e1ba6SJeremy Kerr __entry->reason = reason; 624f9e1ba6SJeremy Kerr ), 634f9e1ba6SJeremy Kerr TP_printk("local %d, peer %d, tag %1x %s", 644f9e1ba6SJeremy Kerr __entry->laddr, 654f9e1ba6SJeremy Kerr __entry->paddr, 664f9e1ba6SJeremy Kerr __entry->tag, 674f9e1ba6SJeremy Kerr __print_symbolic(__entry->reason, 684f9e1ba6SJeremy Kerr { MCTP_TRACE_KEY_TIMEOUT, "timeout" }, 694f9e1ba6SJeremy Kerr { MCTP_TRACE_KEY_REPLIED, "replied" }, 704f9e1ba6SJeremy Kerr { MCTP_TRACE_KEY_INVALIDATED, "invalidated" }, 71*63ed1aabSMatt Johnston { MCTP_TRACE_KEY_CLOSED, "closed" }, 72*63ed1aabSMatt Johnston { MCTP_TRACE_KEY_DROPPED, "dropped" }) 734f9e1ba6SJeremy Kerr ) 744f9e1ba6SJeremy Kerr ); 754f9e1ba6SJeremy Kerr 764f9e1ba6SJeremy Kerr #endif 774f9e1ba6SJeremy Kerr 784f9e1ba6SJeremy Kerr #include <trace/define_trace.h> 79