Re: [PATCH] xdp: Remove unused events xdp_redirect_map and xdp_redirect_map_err
From: Jesper Dangaard Brouer <hawk@kernel.org>
Date: 2025-06-16 12:06:03
Also in:
bpf, lkml
On 12/06/2025 12.54, Jesper Dangaard Brouer wrote:
On 12/06/2025 12.30, Toke Høiland-Jørgensen wrote:quoted
Steven Rostedt [off-list ref] writes:quoted
From: Steven Rostedt <rostedt@goodmis.org> Each TRACE_EVENT() defined can take up around 5K of text and meta data regardless if they are used or not. New code is being developed that will warn when a tracepoint is defined but not used. The trace events xdp_redirect_map and xdp_redirect_map_err are defined but not used, but there's also a comment that states these are kept around for backward compatibility. Which is interesting because since they are not used, any old BPF program that expects them to exist will get incorrect data (no data) when they use them. It's worse than not working, it's silently failing. Remove them as they will soon cause warnings, or if they really need to stick around, then code needs to be added to use them. Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>I guess that makes sense; I have no objections to getting rid of them. Reviewed-by: Toke Høiland-Jørgensen <toke@kernel.org>Make sense. Toke we have to check how XDP-tools handle when these tracepoints disappears.
To Toke, notice that userspace tools expect this tracepoint to be
available will fail as below (for kernel release v6.16):
$ sudo ./xdp-bench redirect mlx5p1 veth41
libbpf: prog 'tp_xdp_redirect_map_err': failed to find kernel BTF
type ID of 'xdp_redirect_map_err': -3
libbpf: prog 'tp_xdp_redirect_map_err': failed to prepare load
attributes: -3
libbpf: prog 'tp_xdp_redirect_map_err': failed to load: -3
libbpf: failed to load object 'xdp_redirect_basic'
Failed to attach XDP program: No such process
IMHO this is a userspace problem, that needs to be more flexible and
adapt to this change.
This was changed in kernel v5.6 (Jan 2020) commit 1d233886dd90 ("xdp:
Use bulking for non-map XDP_REDIRECT and consolidate code paths").
So, I'm thinking that xdp-tools could just remove monitoring for these
tracepoints?
--Jesper