sched_ext: Don't warn on core-sched forced idle in put_prev_task_scx()
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 6.12.114, 6.18.42, 7.1.6
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
Summary
In the Linux kernel, the following vulnerability has been resolved: sched_ext: Don't warn on core-sched forced idle in put_prev_task_scx() put_prev_task_scx() warns when a runnable task drops to a lower sched_class without SCX_OPS_ENQ_LAST, on the assumption that balance_one() would have kept it running. Core scheduling breaks that: a forced-idle SMT sibling reschedules through the core_pick fast path in pick_next_task(), which skips pick_task_scx() and thus balance_one(), so a runnable task can drop to idle with ENQ_LAST unset. Gate the warning on sched_cpu_cookie_match(): a cookie mismatch means core scheduling forced the idle, while a match (or core scheduling off) still catches a genuine missing-ENQ_LAST drop.
Timeline
- CVE published
- Record last updated
Affected versions
- Linux Linux
From 7c65ae81ea86a6ed8086e1a5651acd766187f19b · fixed in 6267ebee9f2f3e26f4968bf6dc29d350620fa320; From 7c65ae81ea86a6ed8086e1a5651acd766187f19b · fixed in 2907e9d0f05b506dfd58aec589a23042a56ef36b; From 7c65ae81ea86a6ed8086e1a5651acd766187f19b · fixed in e2f188cdbf8312289532c36eb4e9eb1c9544d43a; From 7c65ae81ea86a6ed8086e1a5651acd766187f19b · fixed in b7d9c359e5cf867f7eb23df3bb1c6b9e58af24da
- Linux Linux
6.12
- KernelLinux
From 6.12.0 · fixed in 6.12.114; From 6.13.0 · fixed in 6.18.42; From 6.19.0 · fixed in 7.1.6