* [PATCH v3] bpf: cpumap: add missing XDP_ABORTED handling in xdp prog runner
@ 2026-02-18 4:29 Anand Kumar Shaw
2026-02-25 4:06 ` Alexei Starovoitov
2026-03-03 16:40 ` patchwork-bot+netdevbpf
0 siblings, 2 replies; 3+ messages in thread
From: Anand Kumar Shaw @ 2026-02-18 4:29 UTC (permalink / raw)
To: bpf, netdev
Cc: kuba, ast, daniel, davem, hawk, john.fastabend, sdf, andrii,
martin.lau, eddyz87, song, yonghong.song, kpsingh, haoluo, jolsa,
linux-kernel, Anand Kumar Shaw
cpu_map_bpf_prog_run_xdp() handles XDP_PASS, XDP_REDIRECT, and
XDP_DROP but is missing an XDP_ABORTED case. Without it, XDP_ABORTED
falls into the default case which logs a misleading "invalid XDP
action" warning instead of tracing the abort via trace_xdp_exception().
Add the missing XDP_ABORTED case with trace_xdp_exception(), matching
the handling already present in the skb path (cpu_map_bpf_prog_run_skb),
devmap (dev_map_bpf_prog_run), and the generic XDP path (do_xdp_generic).
Also pass xdpf->dev_rx instead of NULL to bpf_warn_invalid_xdp_action()
in the default case, so the warning includes the actual device name.
This aligns with the generic XDP path in net/core/dev.c which already
passes the real device.
Signed-off-by: Anand Kumar Shaw <anandkrshawheritage@gmail.com>
---
Changes in v3:
- Dropped unrelated queue_index changes that were accidentally
included in v2
Changes in v2:
- Pass xdpf->dev_rx to bpf_warn_invalid_xdp_action() instead of NULL
(Jakub Kicinski)
---
kernel/bpf/cpumap.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/kernel/bpf/cpumap.c b/kernel/bpf/cpumap.c
index 04171fbc39cb..39959bf542f9 100644
--- a/kernel/bpf/cpumap.c
+++ b/kernel/bpf/cpumap.c
@@ -221,7 +221,10 @@ static int cpu_map_bpf_prog_run_xdp(struct bpf_cpu_map_entry *rcpu,
}
break;
default:
- bpf_warn_invalid_xdp_action(NULL, rcpu->prog, act);
+ bpf_warn_invalid_xdp_action(xdpf->dev_rx, rcpu->prog, act);
+ fallthrough;
+ case XDP_ABORTED:
+ trace_xdp_exception(xdpf->dev_rx, rcpu->prog, act);
fallthrough;
case XDP_DROP:
xdp_return_frame(xdpf);
--
2.39.5 (Apple Git-154)
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH v3] bpf: cpumap: add missing XDP_ABORTED handling in xdp prog runner
2026-02-18 4:29 [PATCH v3] bpf: cpumap: add missing XDP_ABORTED handling in xdp prog runner Anand Kumar Shaw
@ 2026-02-25 4:06 ` Alexei Starovoitov
2026-03-03 16:40 ` patchwork-bot+netdevbpf
1 sibling, 0 replies; 3+ messages in thread
From: Alexei Starovoitov @ 2026-02-25 4:06 UTC (permalink / raw)
To: Anand Kumar Shaw
Cc: bpf, Network Development, Jakub Kicinski, Alexei Starovoitov,
Daniel Borkmann, David S. Miller, Jesper Dangaard Brouer,
John Fastabend, Stanislav Fomichev, Andrii Nakryiko,
Martin KaFai Lau, Eduard, Song Liu, Yonghong Song, KP Singh,
Hao Luo, Jiri Olsa, LKML
On Tue, Feb 17, 2026 at 8:29 PM Anand Kumar Shaw
<anandkrshawheritage@gmail.com> wrote:
>
> cpu_map_bpf_prog_run_xdp() handles XDP_PASS, XDP_REDIRECT, and
> XDP_DROP but is missing an XDP_ABORTED case. Without it, XDP_ABORTED
> falls into the default case which logs a misleading "invalid XDP
> action" warning instead of tracing the abort via trace_xdp_exception().
>
> Add the missing XDP_ABORTED case with trace_xdp_exception(), matching
> the handling already present in the skb path (cpu_map_bpf_prog_run_skb),
> devmap (dev_map_bpf_prog_run), and the generic XDP path (do_xdp_generic).
>
> Also pass xdpf->dev_rx instead of NULL to bpf_warn_invalid_xdp_action()
> in the default case, so the warning includes the actual device name.
> This aligns with the generic XDP path in net/core/dev.c which already
> passes the real device.
>
> Signed-off-by: Anand Kumar Shaw <anandkrshawheritage@gmail.com>
> ---
> Changes in v3:
> - Dropped unrelated queue_index changes that were accidentally
> included in v2
Toke, Jesper,
please review.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH v3] bpf: cpumap: add missing XDP_ABORTED handling in xdp prog runner
2026-02-18 4:29 [PATCH v3] bpf: cpumap: add missing XDP_ABORTED handling in xdp prog runner Anand Kumar Shaw
2026-02-25 4:06 ` Alexei Starovoitov
@ 2026-03-03 16:40 ` patchwork-bot+netdevbpf
1 sibling, 0 replies; 3+ messages in thread
From: patchwork-bot+netdevbpf @ 2026-03-03 16:40 UTC (permalink / raw)
To: Anand Kumar Shaw
Cc: bpf, netdev, kuba, ast, daniel, davem, hawk, john.fastabend, sdf,
andrii, martin.lau, eddyz87, song, yonghong.song, kpsingh, haoluo,
jolsa, linux-kernel
Hello:
This patch was applied to bpf/bpf-next.git (master)
by Alexei Starovoitov <ast@kernel.org>:
On Wed, 18 Feb 2026 09:59:24 +0530 you wrote:
> cpu_map_bpf_prog_run_xdp() handles XDP_PASS, XDP_REDIRECT, and
> XDP_DROP but is missing an XDP_ABORTED case. Without it, XDP_ABORTED
> falls into the default case which logs a misleading "invalid XDP
> action" warning instead of tracing the abort via trace_xdp_exception().
>
> Add the missing XDP_ABORTED case with trace_xdp_exception(), matching
> the handling already present in the skb path (cpu_map_bpf_prog_run_skb),
> devmap (dev_map_bpf_prog_run), and the generic XDP path (do_xdp_generic).
>
> [...]
Here is the summary with links:
- [v3] bpf: cpumap: add missing XDP_ABORTED handling in xdp prog runner
https://git.kernel.org/bpf/bpf-next/c/39948c2d42b5
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-03-03 16:40 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-02-18 4:29 [PATCH v3] bpf: cpumap: add missing XDP_ABORTED handling in xdp prog runner Anand Kumar Shaw
2026-02-25 4:06 ` Alexei Starovoitov
2026-03-03 16:40 ` patchwork-bot+netdevbpf
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox