Message ID | 20210805185750.4522-13-xiyou.wangcong@gmail.com (mailing list archive) |
---|---|
State | Changes Requested |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | net: add more tracepoints to TCP/IP stack | expand |
Context | Check | Description |
---|---|---|
netdev/cover_letter | success | Link |
netdev/fixes_present | success | Link |
netdev/patch_count | success | Link |
netdev/tree_selection | success | Clearly marked for net-next |
netdev/subject_prefix | success | Link |
netdev/cc_maintainers | warning | 7 maintainers not CCed: mingo@redhat.com dsahern@kernel.org davem@davemloft.net edumazet@google.com rostedt@goodmis.org kuba@kernel.org yoshfuji@linux-ipv6.org |
netdev/source_inline | success | Was 0 now: 0 |
netdev/verify_signedoff | success | Link |
netdev/module_param | success | Was 0 now: 0 |
netdev/build_32bit | success | Errors and warnings before: 22 this patch: 22 |
netdev/kdoc | success | Errors and warnings before: 0 this patch: 0 |
netdev/verify_fixes | success | Link |
netdev/checkpatch | warning | CHECK: Alignment should match open parenthesis |
netdev/build_allmodconfig_warn | success | Errors and warnings before: 22 this patch: 22 |
netdev/header_inline | success | Link |
diff --git a/include/trace/events/tcp.h b/include/trace/events/tcp.h index adf84866dee9..f788ac43c4bf 100644 --- a/include/trace/events/tcp.h +++ b/include/trace/events/tcp.h @@ -116,6 +116,15 @@ DEFINE_EVENT(tcp_event_sk_skb, tcp_v4_rcv, TP_ARGS(sk, skb) ); +#if IS_ENABLED(CONFIG_IPV6) +DEFINE_EVENT(tcp_event_sk_skb, tcp_v6_rcv, + + TP_PROTO(const struct sock *sk, const struct sk_buff *skb), + + TP_ARGS(sk, skb) +); +#endif + /* * skb of trace_tcp_send_reset is the skb that caused RST. In case of * active reset, skb should be NULL diff --git a/net/core/net-traces.c b/net/core/net-traces.c index 83df315708ba..e0840efe479a 100644 --- a/net/core/net-traces.c +++ b/net/core/net-traces.c @@ -66,4 +66,5 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(tcp_bad_csum); EXPORT_TRACEPOINT_SYMBOL_GPL(udp_v6_send_skb); EXPORT_TRACEPOINT_SYMBOL_GPL(ipv6_rcv); EXPORT_TRACEPOINT_SYMBOL_GPL(udpv6_rcv); +EXPORT_TRACEPOINT_SYMBOL_GPL(tcp_v6_rcv); #endif diff --git a/net/ipv6/tcp_ipv6.c b/net/ipv6/tcp_ipv6.c index 0ce52d46e4f8..eb9586d798b7 100644 --- a/net/ipv6/tcp_ipv6.c +++ b/net/ipv6/tcp_ipv6.c @@ -1765,6 +1765,9 @@ INDIRECT_CALLABLE_SCOPE int tcp_v6_rcv(struct sk_buff *skb) bh_unlock_sock(sk); if (skb_to_free) __kfree_skb(skb_to_free); + if (!ret) + trace_tcp_v6_rcv(sk, skb); + put_and_return: if (refcounted) sock_put(sk);