linux/drivers/net/ethernet/airoha
Lorenzo Bianconi 649ea07fc2 net: airoha: fix ETS channel derivation in airoha_tc_setup_qdisc_ets()
Derive the hardware QoS channel from opt->parent instead of opt->handle
in airoha_tc_setup_qdisc_ets(). The ETS qdisc handle is either
user-specified or auto-allocated by qdisc_alloc_handle() and bears no
relation to the HTB leaf classid that identifies the hardware channel.
HTB derives the channel from TC_H_MIN(opt->classid), and ETS is always
attached as a child of an HTB leaf, so its opt->parent matches that
classid. Using opt->handle instead can cause two ETS qdiscs on different
HTB leaves to collide on the same hardware channel, corrupting scheduler
configuration and stats.

Fixes: 20bf7d07c9 ("net: airoha: Add sched ETS offload support")
Reviewed-by: Simon Horman <horms@kernel.org>
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Link: https://patch.msgid.link/20260720-airoha-ets-handle-fix-v2-1-6f7129ddc06f@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2026-07-23 10:02:59 -07:00
..
airoha_eth.c net: airoha: fix ETS channel derivation in airoha_tc_setup_qdisc_ets() 2026-07-23 10:02:59 -07:00
airoha_eth.h net: airoha: fix MIB stats collection to be lossless 2026-07-21 09:46:52 +02:00
airoha_npu.c net: airoha: Fix DMA direction for NPU mailbox buffer 2026-07-21 12:24:12 +02:00
airoha_ppe_debugfs.c net: airoha: Fix debugfs new-tuple display for IPv4 ROUTE entries 2026-06-13 15:18:42 -07:00
airoha_ppe.c net: airoha: Fix potential use-after-free in airoha_ppe_deinit() 2026-07-21 12:17:54 +02:00
airoha_regs.h net: airoha: fix max receive size configuration 2026-06-30 11:10:10 +02:00
Kconfig net: airoha: Fix typos in comments and Kconfig 2026-06-15 15:45:45 -07:00
Makefile net: airoha: Introduce PPE debugfs support 2025-03-04 13:22:10 +01:00