Fix compilation for 3.0 kernels that are named 2.6.40
[lttng-modules.git] / instrumentation / events / lttng-module / net.h
1 #undef TRACE_SYSTEM
2 #define TRACE_SYSTEM net
3
4 #if !defined(_TRACE_NET_H) || defined(TRACE_HEADER_MULTI_READ)
5 #define _TRACE_NET_H
6
7 #include <linux/skbuff.h>
8 #include <linux/netdevice.h>
9 #include <linux/ip.h>
10 #include <linux/tracepoint.h>
11 #include <linux/version.h>
12
13 TRACE_EVENT(net_dev_xmit,
14
15 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,40))
16 TP_PROTO(struct sk_buff *skb,
17 int rc,
18 struct net_device *dev,
19 unsigned int skb_len),
20
21 TP_ARGS(skb, rc, dev, skb_len),
22 #else
23 TP_PROTO(struct sk_buff *skb,
24 int rc),
25
26 TP_ARGS(skb, rc),
27 #endif
28
29 TP_STRUCT__entry(
30 __field( void *, skbaddr )
31 __field( unsigned int, len )
32 __field( int, rc )
33 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,40))
34 __string( name, dev->name )
35 #else
36 __string( name, skb->dev->name )
37 #endif
38 ),
39
40 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,40))
41 TP_fast_assign(
42 tp_assign(skbaddr, skb)
43 tp_assign(len, skb_len)
44 tp_assign(rc, rc)
45 tp_strcpy(name, dev->name)
46 ),
47 #else
48 TP_fast_assign(
49 tp_assign(skbaddr, skb)
50 tp_assign(len, skb->len)
51 tp_assign(rc, rc)
52 tp_strcpy(name, skb->dev->name)
53 ),
54 #endif
55
56 TP_printk("dev=%s skbaddr=%p len=%u rc=%d",
57 __get_str(name), __entry->skbaddr, __entry->len, __entry->rc)
58 )
59
60 DECLARE_EVENT_CLASS(net_dev_template,
61
62 TP_PROTO(struct sk_buff *skb),
63
64 TP_ARGS(skb),
65
66 TP_STRUCT__entry(
67 __field( void *, skbaddr )
68 __field( unsigned int, len )
69 __string( name, skb->dev->name )
70 ),
71
72 TP_fast_assign(
73 tp_assign(skbaddr, skb)
74 tp_assign(len, skb->len)
75 tp_strcpy(name, skb->dev->name)
76 ),
77
78 TP_printk("dev=%s skbaddr=%p len=%u",
79 __get_str(name), __entry->skbaddr, __entry->len)
80 )
81
82 DEFINE_EVENT(net_dev_template, net_dev_queue,
83
84 TP_PROTO(struct sk_buff *skb),
85
86 TP_ARGS(skb)
87 )
88
89 DEFINE_EVENT(net_dev_template, netif_receive_skb,
90
91 TP_PROTO(struct sk_buff *skb),
92
93 TP_ARGS(skb)
94 )
95
96 DEFINE_EVENT(net_dev_template, netif_rx,
97
98 TP_PROTO(struct sk_buff *skb),
99
100 TP_ARGS(skb)
101 )
102 #endif /* _TRACE_NET_H */
103
104 /* This part must be outside protection */
105 #include "../../../probes/define_trace.h"
This page took 0.031095 seconds and 4 git commands to generate.