diff options
| author | Jamal Hadi Salim <jhs@mojatatu.com> | 2026-09-26 14:03:28 -0400 |
|---|---|---|
| committer | Paolo Abeni <pabeni@redhat.com> | 2026-09-29 12:49:13 +0200 |
| commit | 54518e0e827f4ca9229ae657022c60bf60f5c1bf (patch) | |
| tree | 86b4fc0b5037c7432f9bf831e6e9777f61784a6a /tools/perf/scripts/python | |
| parent | d031465acc362866f27e4f8f79cfecf1037fe2e5 (diff) | |
| download | linux-54518e0e827f4ca9229ae657022c60bf60f5c1bf.tar.gz linux-54518e0e827f4ca9229ae657022c60bf60f5c1bf.zip | |
net/sched: sch_codel: match the no-drop threshold to the packet size
commit 6439461f1618 ("net/sched: sch_codel: clamp default mtu to avoid
disabling CoDel") clamped q->params.mtu to [256, 1 << 20]. The value is
the CoDel no-drop threshold (codel_impl.h "*backlog <= params->mtu"), so
on a link whose maximum transmitted packet size is below 256 the floor
extends CoDel's minimum-backlog exemption beyond one packet and delays
drop or mark eligibility by several small packets.
Keep the upper bound that guards the original overflow (psched_mtu()
wrapping to ~2 GiB on a huge-MTU device) but drop the 256 floor, so the
threshold tracks the real device packet size.
Conditions to recreate the bug: attach a codel qdisc on a link whose
MTU plus hard_header_len is below 256 (e.g. a CAN interface). At that
MTU the no-drop threshold must equal the device MTU plus its
hard-header length; before this patch it was forced to 256.
Requires CAP_NET_ADMIN in a user namespace.
Fixes: 6439461f1618 ("net/sched: sch_codel: clamp default mtu to avoid disabling CoDel")
Reported-by: Sashiko (nipa) <sashiko-bot@kernel.org>
Link: https://netdev-ai.bots.linux.dev/sashiko/#/patchset/20260819143136.57350-1-jhs@mojatatu.com
Signed-off-by: Jamal Hadi Salim <jhs@mojatatu.com>
Link: https://patch.msgid.link/QDISC-34MS.v1.20260925165535@mojatatu.com.2
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Diffstat (limited to 'tools/perf/scripts/python')
0 files changed, 0 insertions, 0 deletions
