1*df844fd4SDavid Howells /* AF_RXRPC tracepoints 2*df844fd4SDavid Howells * 3*df844fd4SDavid Howells * Copyright (C) 2016 Red Hat, Inc. All Rights Reserved. 4*df844fd4SDavid Howells * Written by David Howells (dhowells@redhat.com) 5*df844fd4SDavid Howells * 6*df844fd4SDavid Howells * This program is free software; you can redistribute it and/or 7*df844fd4SDavid Howells * modify it under the terms of the GNU General Public Licence 8*df844fd4SDavid Howells * as published by the Free Software Foundation; either version 9*df844fd4SDavid Howells * 2 of the Licence, or (at your option) any later version. 10*df844fd4SDavid Howells */ 11*df844fd4SDavid Howells #undef TRACE_SYSTEM 12*df844fd4SDavid Howells #define TRACE_SYSTEM rxrpc 13*df844fd4SDavid Howells 14*df844fd4SDavid Howells #if !defined(_TRACE_RXRPC_H) || defined(TRACE_HEADER_MULTI_READ) 15*df844fd4SDavid Howells #define _TRACE_RXRPC_H 16*df844fd4SDavid Howells 17*df844fd4SDavid Howells #include <linux/tracepoint.h> 18*df844fd4SDavid Howells 19*df844fd4SDavid Howells TRACE_EVENT(rxrpc_skb, 20*df844fd4SDavid Howells TP_PROTO(struct sk_buff *skb, int op, int usage, int mod_count, 21*df844fd4SDavid Howells const void *where), 22*df844fd4SDavid Howells 23*df844fd4SDavid Howells TP_ARGS(skb, op, usage, mod_count, where), 24*df844fd4SDavid Howells 25*df844fd4SDavid Howells TP_STRUCT__entry( 26*df844fd4SDavid Howells __field(struct sk_buff *, skb ) 27*df844fd4SDavid Howells __field(int, op ) 28*df844fd4SDavid Howells __field(int, usage ) 29*df844fd4SDavid Howells __field(int, mod_count ) 30*df844fd4SDavid Howells __field(const void *, where ) 31*df844fd4SDavid Howells ), 32*df844fd4SDavid Howells 33*df844fd4SDavid Howells TP_fast_assign( 34*df844fd4SDavid Howells __entry->skb = skb; 35*df844fd4SDavid Howells __entry->op = op; 36*df844fd4SDavid Howells __entry->usage = usage; 37*df844fd4SDavid Howells __entry->mod_count = mod_count; 38*df844fd4SDavid Howells __entry->where = where; 39*df844fd4SDavid Howells ), 40*df844fd4SDavid Howells 41*df844fd4SDavid Howells TP_printk("s=%p %s u=%d m=%d p=%pSR", 42*df844fd4SDavid Howells __entry->skb, 43*df844fd4SDavid Howells (__entry->op == 0 ? "NEW" : 44*df844fd4SDavid Howells __entry->op == 1 ? "SEE" : 45*df844fd4SDavid Howells __entry->op == 2 ? "GET" : 46*df844fd4SDavid Howells __entry->op == 3 ? "FRE" : 47*df844fd4SDavid Howells "PUR"), 48*df844fd4SDavid Howells __entry->usage, 49*df844fd4SDavid Howells __entry->mod_count, 50*df844fd4SDavid Howells __entry->where) 51*df844fd4SDavid Howells ); 52*df844fd4SDavid Howells 53*df844fd4SDavid Howells #endif /* _TRACE_RXRPC_H */ 54*df844fd4SDavid Howells 55*df844fd4SDavid Howells /* This part must be outside protection */ 56*df844fd4SDavid Howells #include <trace/define_trace.h> 57