Migrate tracepoint instrumentation to TP_FIELDS
[lttng-modules.git] / instrumentation / events / lttng-module / net.h
1 #undef TRACE_SYSTEM
2 #define TRACE_SYSTEM net
3
4 #if !defined(LTTNG_TRACE_NET_H) || defined(TRACE_HEADER_MULTI_READ)
5 #define LTTNG_TRACE_NET_H
6
7 #include "../../../probes/lttng-tracepoint-event.h"
8 #include <linux/skbuff.h>
9 #include <linux/netdevice.h>
10 #include <linux/ip.h>
11 #include <linux/version.h>
12
13 LTTNG_TRACEPOINT_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_FIELDS(
30 ctf_integer(void *, skbaddr, skb)
31 ctf_integer(unsigned int, len, skb_len)
32 ctf_integer(int, rc, rc)
33 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,40))
34 ctf_string(name, dev->name)
35 #else
36 ctf_string(name, skb->dev->name)
37 #endif
38 )
39 )
40
41 LTTNG_TRACEPOINT_EVENT_CLASS(net_dev_template,
42
43 TP_PROTO(struct sk_buff *skb),
44
45 TP_ARGS(skb),
46
47 TP_FIELDS(
48 ctf_integer(void *, skbaddr, skb)
49 ctf_integer(unsigned int, len, skb->len)
50 ctf_string(name, skb->dev->name)
51 )
52 )
53
54 LTTNG_TRACEPOINT_EVENT_INSTANCE(net_dev_template, net_dev_queue,
55
56 TP_PROTO(struct sk_buff *skb),
57
58 TP_ARGS(skb)
59 )
60
61 LTTNG_TRACEPOINT_EVENT_INSTANCE(net_dev_template, netif_receive_skb,
62
63 TP_PROTO(struct sk_buff *skb),
64
65 TP_ARGS(skb)
66 )
67
68 LTTNG_TRACEPOINT_EVENT_INSTANCE(net_dev_template, netif_rx,
69
70 TP_PROTO(struct sk_buff *skb),
71
72 TP_ARGS(skb)
73 )
74 #endif /* LTTNG_TRACE_NET_H */
75
76 /* This part must be outside protection */
77 #include "../../../probes/define_trace.h"
This page took 0.04621 seconds and 4 git commands to generate.