]> git.ipfire.org Git - thirdparty/linux.git/commit
Merge branch 'net-sched-fix-packet-loops-in-mirred-and-netem'
authorPaolo Abeni <pabeni@redhat.com>
Thu, 28 May 2026 10:26:38 +0000 (12:26 +0200)
committerPaolo Abeni <pabeni@redhat.com>
Thu, 28 May 2026 10:26:39 +0000 (12:26 +0200)
commit031f1592e592e333a25d5e2ba9edd4e8c6821fdc
treebb9ecd4c7a85ef4335b0d2c72e2e1fe8a8eec23c
parent9d5e7a46a9f6d8f503b41bfefef70659845f1679
parent0f6e00aa5f652f5653e0039b9c9a8835f4b4174b
Merge branch 'net-sched-fix-packet-loops-in-mirred-and-netem'

Jamal Hadi Salim says:

====================
net/sched: Fix packet loops in mirred and netem

This patchset adds a 2-bit per-skb tc_depth counter that travels with
the packet. The existing per-CPU mirred nest tracking loses state
when a packet is deferred through the backlog or moves between CPUs
via XPS/RPS. A per-skb field covers both cases.

Patch 1 adds the tc_depth field in a padding hole in sk_buff.
Patches 2-3 revert the check_netem_in_tree() fix and its tests,
which broke legitimate multi-netem configurations.
Patch 4 uses tc_depth to stop netem duplicate recursion.
Patch 5 uses tc_depth to catch mirred ingress redirect loops.
Patch 6 fixes the infinite loop in the mirred egress blockcast case.
Patch 7 fixes drop stats in early return error scenarios in tcf_mirred_act
for redirect (caught by Sashiko [1]).
Patches 8-9 add mirred and netem test cases.

[1] https://sashiko.dev/#/patchset/20260413082027.2244884-1-hxzene%40gmail.com
====================

Link: https://patch.msgid.link/20260525122556.973584-1-jhs@mojatatu.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>