CVE-2026-90076: net/sched: fq: add overflow bounds to quantum and initial quantum
In the Linux kernel, the following vulnerability has been resolved:
net/sched: fq: add overflow bounds to quantum and initial quantum
fqinit() computes quantum = 2 pschedmtu() and initialquantum = 10 pschedmtu() with no overflow check. A device with a huge MTU (e.g. dummy with maxmtu == 0 accepting MTU 2147483634) makes pschedmtu() return 0x80000000; the 2 and 10 multiplications wrap to 0 in 32-bit arithmetic, so q->quantum == 0. Then in fqdequeue() the credit-refill loop adds 0 to f->credit (which stays <= 0) and goto begin loops forever under the qdisc lock, creating a soft lockup.
Clamp pschedmtu() to [1, 1 << 20] before multiplying so the product cannot wrap, then cap the result at 1 << 20, matching the bound already enforced on TCAFQQUANTUM in fqchange().
Conditions to recreate the bug: a device whose MTU (plus hardheaderlen) is large enough that 2 pschedmtu() wraps (e.g. a dummy device with maxmtu == 0 accepting MTU 2147483634). Requires CAPNETADMIN in a user namespace.
Event History
Frequently Asked Questions
Who can trigger the soft lockup?
An attacker needs CAP_NET_ADMIN in a user namespace. They also need access to a device that accepts an exceptionally large MTU, such as a dummy device with max_mtu set to 0.
Is a normal MTU configuration affected?
The issue requires an MTU plus hard-header length large enough for twice the scheduler MTU value to wrap in 32-bit arithmetic. The provided example uses an MTU of 2147483634, so ordinary MTU values do not meet the stated trigger condition.
What happens when exploitation succeeds?
The fq qdisc quantum becomes zero. During dequeue, the credit refill loop cannot make progress and loops indefinitely while holding the qdisc lock, causing a soft lockup.
What mitigation is available if the fix cannot be applied immediately?
Restrict CAP_NET_ADMIN in user namespaces and prevent creation or configuration of devices with extremely large MTUs. The affected condition depends on setting an MTU large enough to cause the quantum calculation to wrap.