diff options
| author | Nguyen Ngoc Thang <ngocthang2710.1999@gmail.com> | 2026-09-15 22:08:16 +0700 |
|---|---|---|
| committer | Jakub Kicinski <kuba@kernel.org> | 2026-09-18 16:35:19 -0700 |
| commit | 47abe7a5c4eb53269aca3506446f851572a059a3 (patch) | |
| tree | 8fcf4f97eb7959020835f00dfcbab80add7c1e05 /tools/perf/scripts/python/stackcollapse.py | |
| parent | 99cc2a62e07a44a22254d7beca9ef1f8ad886d0d (diff) | |
| download | linux-47abe7a5c4eb53269aca3506446f851572a059a3.tar.gz linux-47abe7a5c4eb53269aca3506446f851572a059a3.zip | |
net/sched: act_ct: don't WARN on benign flow_offload_alloc() failure
flow_offload_alloc() returns NULL when the conntrack entry is dying
(e.g. raced with a conntrack flush) or when the GFP_ATOMIC allocation
fails; both are expected under load and neither is a kernel bug. This
path runs from softirq on every committed packet, so with
panic_on_warn=1 an unprivileged user can panic the box just by racing
a conntrack flush against a `tc ... action ct commit` classifier.
Reproduced with a custom repro under QEMU: a small, fixed set of UDP
flows through `tc filter ... action ct commit` on lo, raced against
threads flooding bare ctnetlink CT_DELETE (flush) requests. Hits
WARNING: net/sched/act_ct.c:437 (tcf_ct_flow_table_add(), inlined
into tcf_ct_act() in this build) within ~15s on the unpatched kernel;
same setup is clean on the patched kernel. The fix itself is
behavior-preserving: both branches already did `goto err_alloc`
before and after, only the WARN is removed.
Fixes: 64ff70b80fd4 ("net/sched: act_ct: Offload established connections to flow table")
Reported-by: syzbot+6cc37aba98dac721c415@syzkaller.appspotmail.com
Closes: https://syzkaller.appspot.com/bug?extid=6cc37aba98dac721c415
Signed-off-by: Nguyen Ngoc Thang <ngocthang2710.1999@gmail.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20260915150816.36487-1-ngocthang2710.1999@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python/stackcollapse.py')
0 files changed, 0 insertions, 0 deletions
