]> www.infradead.org Git - users/jedix/linux-maple.git/commit
trace: tcp: Add tracepoint for tcp_cwnd_reduction()
authorBreno Leitao <leitao@debian.org>
Fri, 14 Feb 2025 17:07:11 +0000 (09:07 -0800)
committerPaolo Abeni <pabeni@redhat.com>
Tue, 18 Feb 2025 14:29:53 +0000 (15:29 +0100)
commit8e677a466145174e6899ceaf189e7cb7fbd6ad3f
tree3e962e015efdd99b8550e4ec41790b76f1f1bc9d
parent8f17a6a861b5d16a5e87e1ef319129c2d49c6933
trace: tcp: Add tracepoint for tcp_cwnd_reduction()

Add a lightweight tracepoint to monitor TCP congestion window
adjustments via tcp_cwnd_reduction(). This tracepoint enables tracking
of:
- TCP window size fluctuations
- Active socket behavior
- Congestion window reduction events

Meta has been using BPF programs to monitor this function for years.
Adding a proper tracepoint provides a stable API for all users who need
to monitor TCP congestion window behavior.

Use DECLARE_TRACE instead of TRACE_EVENT to avoid creating trace event
infrastructure and exporting to tracefs, keeping the implementation
minimal. (Thanks Steven Rostedt)

Given that this patch creates a rawtracepoint, you could hook into it
using regular tooling, like bpftrace, using regular rawtracepoint
infrastructure, such as:

rawtracepoint:tcp_cwnd_reduction_tp {
....
}

Signed-off-by: Breno Leitao <leitao@debian.org>
Reviewed-by: Eric Dumazet <edumazet@google.com>
Link: https://patch.msgid.link/20250214-cwnd_tracepoint-v2-1-ef8d15162d95@debian.org
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
include/trace/events/tcp.h
net/ipv4/tcp_input.c