Description
In the Linux kernel, the following vulnerability has been resolved: net/sched: sch_fq: fix integer overflow of "credit" if sch_fq is configured with "initial quantum" having values greater than INT_MAX, the first assignment of "credit" does signed integer overflow to a very negative value. In this situation, the syzkaller script provided by Cristoph triggers the CPU soft-lockup warning even with few sockets. It's not an infinite loop, but "credit" wasn't probably meant to be minus 2Gb for each new flow. Capping "initial quantum" to INT_MAX proved to fix the issue. v2: validation of "initial quantum" is done in fq_policy, instead of open coding in fq_change() _ suggested by Jakub Kicinski
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
afe4fd062416b158a8a8538b23adc1930a9b88dc to < 4b8a05e3801661a0438fcd0cdef181030d966a5aaffectedafe4fd062416b158a8a8538b23adc1930a9b88dc to < d0b43125ec892aeb1b03e5df5aab595097da225aaffectedafe4fd062416b158a8a8538b23adc1930a9b88dc to < 4fbefeab88c6e79753a25099d455d3d59d2946b4affectedafe4fd062416b158a8a8538b23adc1930a9b88dc to < 85f24cb2f10b2b0f2882e5786a09b4790bb3a0adaffectedafe4fd062416b158a8a8538b23adc1930a9b88dc to < 2322462d6f9ad4874f4e3c63df3b5cc00cb1acbdaffectedafe4fd062416b158a8a8538b23adc1930a9b88dc to < 7041101ff6c3073fd8f2e99920f535b111c929cbaffected
Linux Linux
Default version status: affected
3.12affected0 to < 3.12unaffected5.10.180 to ≤ 5.10.*unaffected5.15.111 to ≤ 5.15.*unaffected6.1.28 to ≤ 6.1.*unaffected6.2.15 to ≤ 6.2.*unaffected6.3.2 to ≤ 6.3.*unaffected6.4 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/4b8a05e3801661a0438fcd0cdef181030d966a5a ↗
- https://git.kernel.org/stable/c/d0b43125ec892aeb1b03e5df5aab595097da225a ↗
- https://git.kernel.org/stable/c/4fbefeab88c6e79753a25099d455d3d59d2946b4 ↗
- https://git.kernel.org/stable/c/85f24cb2f10b2b0f2882e5786a09b4790bb3a0ad ↗
- https://git.kernel.org/stable/c/2322462d6f9ad4874f4e3c63df3b5cc00cb1acbd ↗
- https://git.kernel.org/stable/c/7041101ff6c3073fd8f2e99920f535b111c929cb ↗