X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=include%2Finstrumentation%2Fevents%2Fskb.h;h=9f1047c6e134b8d8c3761430b9919a616db1aafe;hb=d6560a97a913a28d0939e998cdf1ba70c9127f8d;hp=2be9d83fb4495d937eecd7d3352cdd7f636043e3;hpb=4f47ccf08dfac3d5db7553eb8b40bdab19764727;p=lttng-modules.git diff --git a/include/instrumentation/events/skb.h b/include/instrumentation/events/skb.h index 2be9d83f..9f1047c6 100644 --- a/include/instrumentation/events/skb.h +++ b/include/instrumentation/events/skb.h @@ -8,11 +8,59 @@ #include #include #include -#include +#include /* * Tracepoint for free an sk_buff: */ +#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,17,0) \ + || LTTNG_KERNEL_RANGE(5,15,58, 5,16,0) \ + || LTTNG_RHEL_KERNEL_RANGE(4,18,0,477,10,1, 4,19,0,0,0,0)) +LTTNG_TRACEPOINT_ENUM(skb_drop_reason, + TP_ENUM_VALUES( + ctf_enum_value("NOT_SPECIFIED", SKB_DROP_REASON_NOT_SPECIFIED) + ctf_enum_value("NO_SOCKET", SKB_DROP_REASON_NO_SOCKET) + ctf_enum_value("PKT_TOO_SMALL", SKB_DROP_REASON_PKT_TOO_SMALL) + ctf_enum_value("TCP_CSUM", SKB_DROP_REASON_TCP_CSUM) + ctf_enum_value("SOCKET_FILTER", SKB_DROP_REASON_SOCKET_FILTER) + ctf_enum_value("UDP_CSUM", SKB_DROP_REASON_UDP_CSUM) + ctf_enum_value("MAX", SKB_DROP_REASON_MAX) + ) +) +#elif (LTTNG_RHEL_KERNEL_RANGE(5,14,0,70,0,0, 5,15,0,0,0,0)) +LTTNG_TRACEPOINT_ENUM(skb_drop_reason, + TP_ENUM_VALUES( + ctf_enum_value("NOT_SPECIFIED", SKB_DROP_REASON_NOT_SPECIFIED) + ctf_enum_value("NO_SOCKET", SKB_DROP_REASON_NO_SOCKET) + ctf_enum_value("PKT_TOO_SMALL", SKB_DROP_REASON_PKT_TOO_SMALL) + ctf_enum_value("TCP_CSUM", SKB_DROP_REASON_TCP_CSUM) + ctf_enum_value("UDP_CSUM", SKB_DROP_REASON_UDP_CSUM) + ctf_enum_value("MAX", SKB_DROP_REASON_MAX) + ) +) +#endif + +#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(5,17,0) \ + || LTTNG_KERNEL_RANGE(5,15,58, 5,16,0) \ + || LTTNG_RHEL_KERNEL_RANGE(5,14,0,70,0,0, 5,15,0,0,0,0) \ + || LTTNG_RHEL_KERNEL_RANGE(4,18,0,477,10,1, 4,19,0,0,0,0)) +LTTNG_TRACEPOINT_EVENT_MAP(kfree_skb, + + skb_kfree, + + TP_PROTO(struct sk_buff *skb, void *location, + enum skb_drop_reason reason), + + TP_ARGS(skb, location, reason), + + TP_FIELDS( + ctf_integer_hex(void *, skbaddr, skb) + ctf_integer_hex(void *, location, location) + ctf_integer_network(unsigned short, protocol, skb->protocol) + ctf_enum(skb_drop_reason, uint8_t, reason, reason) + ) +) +#else LTTNG_TRACEPOINT_EVENT_MAP(kfree_skb, skb_kfree, @@ -27,7 +75,24 @@ LTTNG_TRACEPOINT_EVENT_MAP(kfree_skb, ctf_integer_network(unsigned short, protocol, skb->protocol) ) ) +#endif + +#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(6,3,0) || \ + LTTNG_RHEL_KERNEL_RANGE(5,14,0,362,0,0, 5,15,0,0,0,0)) +LTTNG_TRACEPOINT_EVENT_MAP(consume_skb, + + skb_consume, + + TP_PROTO(struct sk_buff *skb, void *location), + TP_ARGS(skb, location), + + TP_FIELDS( + ctf_integer_hex(void *, skbaddr, skb) + ctf_integer_hex(void *, location, location) + ) +) +#else LTTNG_TRACEPOINT_EVENT_MAP(consume_skb, skb_consume, @@ -40,6 +105,7 @@ LTTNG_TRACEPOINT_EVENT_MAP(consume_skb, ctf_integer_hex(void *, skbaddr, skb) ) ) +#endif LTTNG_TRACEPOINT_EVENT(skb_copy_datagram_iovec,