summaryrefslogtreecommitdiff
path: root/lib/mpi/mpi-pow.c
diff options
context:
space:
mode:
authorVictor Nogueira <victor@mojatatu.com>2025-04-26 01:07:08 +0300
committerJakub Kicinski <kuba@kernel.org>2025-04-29 01:55:07 +0300
commitf139f37dcdf34b67f5bf92bc8e0f7f6b3ac63aa4 (patch)
tree43a96967e799efae5e65baf7ad8a6e059c5ca1b5 /lib/mpi/mpi-pow.c
parent1a6d0c00fa07972384b0c308c72db091d49988b6 (diff)
downloadlinux-f139f37dcdf34b67f5bf92bc8e0f7f6b3ac63aa4.tar.xz
net_sched: qfq: Fix double list add in class with netem as child qdisc
As described in Gerrard's report [1], there are use cases where a netem child qdisc will make the parent qdisc's enqueue callback reentrant. In the case of qfq, there won't be a UAF, but the code will add the same classifier to the list twice, which will cause memory corruption. This patch checks whether the class was already added to the agg->active list (cl_is_active) before doing the addition to cater for the reentrant case. [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/ Fixes: 37d9cf1a3ce3 ("sched: Fix detection of empty queues in child qdiscs") Acked-by: Jamal Hadi Salim <jhs@mojatatu.com> Signed-off-by: Victor Nogueira <victor@mojatatu.com> Link: https://patch.msgid.link/20250425220710.3964791-5-victor@mojatatu.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'lib/mpi/mpi-pow.c')
0 files changed, 0 insertions, 0 deletions