1 #undef TRACE_SYSTEM 2 #define TRACE_SYSTEM skb 3 4 #if !defined(_TRACE_SKB_H) || defined(TRACE_HEADER_MULTI_READ) 5 #define _TRACE_SKB_H 6 7 #include <linux/skbuff.h> 8 #include <linux/tracepoint.h> 9 10 /* 11 * Tracepoint for free an sk_buff: 12 */ 13 TRACE_EVENT(kfree_skb, 14 15 TP_PROTO(struct sk_buff *skb, void *location), 16 17 TP_ARGS(skb, location), 18 19 TP_STRUCT__entry( 20 __field( void *, skbaddr ) 21 __field( unsigned short, protocol ) 22 __field( void *, location ) 23 ), 24 25 TP_fast_assign( 26 __entry->skbaddr = skb; 27 if (skb) { 28 __entry->protocol = ntohs(skb->protocol); 29 } 30 __entry->location = location; 31 ), 32 33 TP_printk("skbaddr=%p protocol=%u location=%p", 34 __entry->skbaddr, __entry->protocol, __entry->location) 35 ); 36 37 #endif /* _TRACE_SKB_H */ 38 39 /* This part must be outside protection */ 40 #include <trace/define_trace.h> 41