Merge tag 'v3.14.25' into backport/v3.14.24-ltsi-rc1+v3.14.25/snapshot-merge.wip
[platform/adaptation/renesas_rcar/renesas_kernel.git] / drivers / staging / lttng / 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"