Namespace kernel version macros
[lttng-modules.git] / instrumentation / events / lttng-module / net.h
index bfa14fc64ef6562b20f5212ddf94b6711d8e654e..c66a6dba3fe9310bd6c929aac9224cc073b1b267 100644 (file)
@@ -11,7 +11,7 @@
 #include <linux/ip.h>
 #include <linux/ipv6.h>
 #include <linux/tcp.h>
-#include <linux/version.h>
+#include <lttng-kernel-version.h>
 #include <lttng-endian.h>
 #include <net/sock.h>
 
@@ -553,6 +553,175 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(net_dev_template,
 
        TP_ARGS(skb)
 )
+
+#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(3,14,0))
+
+/* Trace events for the receive entry points */
+LTTNG_TRACEPOINT_EVENT_CLASS(net_dev_receive_entry_template,
+
+       TP_PROTO(const struct sk_buff *skb),
+
+       TP_ARGS(skb),
+
+       TP_FIELDS(
+               ctf_integer_hex(const void *, skbaddr, skb)
+       )
+)
+
+LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(net_dev_receive_entry_template,
+
+       napi_gro_frags_entry,
+
+       net_napi_gro_frags_entry,
+
+       TP_PROTO(const struct sk_buff *skb),
+
+       TP_ARGS(skb)
+)
+
+LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(net_dev_receive_entry_template,
+
+       napi_gro_receive_entry,
+
+       net_napi_gro_receive_entry,
+
+       TP_PROTO(const struct sk_buff *skb),
+
+       TP_ARGS(skb)
+)
+
+LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(net_dev_receive_entry_template,
+
+       netif_receive_skb_entry,
+
+       net_if_receive_skb_entry,
+
+       TP_PROTO(const struct sk_buff *skb),
+
+       TP_ARGS(skb)
+)
+
+LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(net_dev_receive_entry_template,
+
+       netif_rx_entry,
+
+       net_if_rx_entry,
+
+       TP_PROTO(const struct sk_buff *skb),
+
+       TP_ARGS(skb)
+)
+
+LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(net_dev_receive_entry_template,
+
+       netif_rx_ni_entry,
+
+       net_if_rx_ni_entry,
+
+       TP_PROTO(const struct sk_buff *skb),
+
+       TP_ARGS(skb)
+)
+
+#endif /* kernel > 3.14 */
+
+#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,19,0))
+
+LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(net_dev_receive_entry_template,
+
+       netif_receive_skb_list_entry,
+
+       net_if_receive_skb_list_entry,
+
+       TP_PROTO(const struct sk_buff *skb),
+
+       TP_ARGS(skb)
+)
+
+#endif /* kernel > 4.19 */
+
+#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,0,0))
+
+/* Trace events for the receive exit points */
+LTTNG_TRACEPOINT_EVENT_CLASS(net_dev_receive_exit_template,
+
+       TP_PROTO(int ret),
+
+       TP_ARGS(ret),
+
+       TP_FIELDS(
+               ctf_integer(int, ret, ret)
+       )
+)
+
+LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(net_dev_receive_exit_template,
+
+       napi_gro_frags_exit,
+
+       net_napi_gro_frags_exit,
+
+       TP_PROTO(int ret),
+
+       TP_ARGS(ret)
+)
+
+LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(net_dev_receive_exit_template,
+
+       napi_gro_receive_exit,
+
+       net_napi_gro_receive_exit,
+
+       TP_PROTO(int ret),
+
+       TP_ARGS(ret)
+)
+
+LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(net_dev_receive_exit_template,
+
+       netif_receive_skb_exit,
+
+       net_if_receive_skb_exit,
+
+       TP_PROTO(int ret),
+
+       TP_ARGS(ret)
+)
+
+LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(net_dev_receive_exit_template,
+
+       netif_rx_exit,
+
+       net_if_rx_exit,
+
+       TP_PROTO(int ret),
+
+       TP_ARGS(ret)
+)
+
+LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(net_dev_receive_exit_template,
+
+       netif_rx_ni_exit,
+
+       net_if_rx_ni_exit,
+
+       TP_PROTO(int ret),
+
+       TP_ARGS(ret)
+)
+
+LTTNG_TRACEPOINT_EVENT_INSTANCE_MAP(net_dev_receive_exit_template,
+
+       netif_receive_skb_list_exit,
+
+       net_if_receive_skb_list_exit,
+
+       TP_PROTO(int ret),
+
+       TP_ARGS(ret)
+)
+
+#endif /* kernel > 5.0.0 */
+
 #endif /* LTTNG_TRACE_NET_H */
 
 /* This part must be outside protection */
This page took 0.02525 seconds and 4 git commands to generate.