CVE-2026-31423: net/sched: sch_hfsc: fix divide-by-zero in rtsc_min()
In the Linux kernel, the following vulnerability has been resolved:
net/sched: schhfsc: fix divide-by-zero in rtscmin()
m2sm() converts a u32 slope to a u64 scaled value. For large inputs (e.g. m1=4000000000), the result can reach 2^32. rtscmin() stores the difference of two such u64 values in a u32 variable dsm and uses it as a divisor. When the difference is exactly 2^32 the truncation yields zero, causing a divide-by-zero oops in the concave-curve intersection path:
Oops: divide error: 0000 RIP: 0010:rtscmin (net/sched/schhfsc.c:601) Call Trace: inited (net/sched/schhfsc.c:629) hfscenqueue (net/sched/schhfsc.c:1569) [...]
Widen dsm to u64 and replace dodiv() with div64u64() so the full difference is preserved.
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2026-31423?
CVE-2026-31423 has been classified with a severity that highlights significant risk due to a potential divide-by-zero vulnerability.
How do I fix CVE-2026-31423?
To fix CVE-2026-31423, update your Linux kernel to the latest stable version where the vulnerability has been patched.
What are the potential impacts of CVE-2026-31423?
The potential impacts of CVE-2026-31423 include denial of service due to a divide-by-zero error affecting the scheduling within the Linux kernel.
Which versions of Linux kernel are affected by CVE-2026-31423?
CVE-2026-31423 affects certain versions of the Linux kernel that utilize the sch_hfsc scheduling class.
What functionality does CVE-2026-31423 impact in the Linux kernel?
CVE-2026-31423 impacts the functionality of the high-fidelity packet scheduler within the Linux kernel.