[SRU][J/N/O/P][PATCH 0/1] CVE-2025-38083
Tim Whisonant
tim.whisonant at canonical.com
Wed Jun 25 23:00:02 UTC 2025
SRU Justification:
[Impact]
net_sched: prio: fix a race in prio_tune()
Gerrard Tai reported a race condition in PRIO, whenever SFQ perturb timer
fires at the wrong time.
The race is as follows:
CPU 0 CPU 1
[1]: lock root
[2]: qdisc_tree_flush_backlog()
[3]: unlock root
|
| [5]: lock root
| [6]: rehash
| [7]: qdisc_tree_reduce_backlog()
|
[4]: qdisc_put()
This can be abused to underflow a parent's qlen.
Calling qdisc_purge_queue() instead of qdisc_tree_flush_backlog()
should fix the race, because all packets will be purged from the qdisc
before releasing the lock.
[Fix]
Plucky: applied Jammy patch
Oracular: applied Jammy patch
Noble: applied Jammy patch
Jammy: cherry picked from upstream
Focal: patch sent to ESM ML
Bionic: not affected
Xenial: not affected
Trusty: not affected
[Test Plan]
Compile and boot tested.
[Where problems could occur]
The change affects the Simple 3-band priority (network) scheduler.
Issues might manifset as packet drops or other unexpected behavior
in the networking stack.
Eric Dumazet (1):
net_sched: prio: fix a race in prio_tune()
net/sched/sch_prio.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--
2.43.0
More information about the kernel-team
mailing list