Description
In the Linux kernel, the following vulnerability has been resolved:

sched/core: Make core-sched flips wait for in-flight selections

Core scheduling's pick_next_task() operates on all sibling rqs under one
acquisition of the shared core-wide lock. A ->pick_task() that releases the
rq lock leaves every sibling __lock momentarily free, letting
__sched_core_flip(false) complete mid-selection and rebind rq_lockp() under
it. The selection resumes on the split locks, touching sibling state it no
longer protects, and __schedule() finally releases a lock that was never
taken while leaking the one that was.

Count in-flight core-wide selections in the leader's rq->core_pick_in_flight
and make __sched_core_flip() wait for the count to drain. The count only
changes under the shared lock, which the flip holds while sampling, so no
other ordering is needed. The wait can repeat while selections overlap, but
the flip backs off between samples and flips are rare cookie-lifetime
events.

sched_core_cpu_deactivate() moves the count to the new leader - a stale copy
left behind would bias it forever if that CPU later returns as its own
leader.
Published: 2026-09-11
Score: 7.8 High
EPSS: < 1% Very Low
KEV: No
Impact: Potential scheduler corruption or instability
Action: Patch Kernel
AI Analysis

Impact

The vulnerability is caused by a race between the core scheduling pick_next_task routine and the core‑wide flip logic. When a pick_task releases the core‑wide lock, an in‑flight flip can rebind the rq_lockp() under a different core, causing the selection process to resume on split locks and modify sibling state that is no longer protected, leading to lock leaks and corruption of scheduler data structures.

Affected Systems

All Linux kernel releases that do not contain the commit 23eda24f325a6e6d686d30ec75f2e9d6745e2015 are impacted. The issue is confined to the kernel’s core scheduling code.

Risk and Exploitability

The CVSS score of 7.8 indicates high severity. The EPSS probability is less than 1%, suggesting a low likelihood of exploitation in the wild, and the vulnerability is not listed in the CISA KEV catalog. The likely attack vector appears to be a race condition that would need precise timing between normal scheduling operations and an in‑flight core flip. Based on the description, it is inferred that only privileged kernel‑level code could reliably trigger this race, making exploitation difficult. Successful exploitation could cause a scheduler crash or denial of service but does not provide privilege escalation or direct data leakage.

Generated by OpenCVE AI on September 13, 2026 at 08:11 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade the Linux kernel to a version that incorporates the commit 23eda24f325a6e6d686d30ec75f2e9d6745e2015 or later which adds the in‑flight counter guard to core scheduling flips.
  • If an immediate kernel update is not feasible, backport the patch that introduces the in‑flight counter and the waiting logic to the running kernel.
  • Enable CONFIG_SCHED_DEBUG or similar kernel debugging features and monitor scheduler logs for unexpected lock behavior to detect potential race occurrences during transitional periods.

Generated by OpenCVE AI on September 13, 2026 at 08:11 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sun, 13 Sep 2026 06:45:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 4.7, 'vector': 'CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H'}

cvssV3_1

{'score': 7.8, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'}


Sat, 12 Sep 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-366
References
Metrics threat_severity

None

cvssV3_1

{'score': 4.7, 'vector': 'CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H'}

threat_severity

Moderate


Fri, 11 Sep 2026 23:45:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: sched/core: Make core-sched flips wait for in-flight selections Core scheduling's pick_next_task() operates on all sibling rqs under one acquisition of the shared core-wide lock. A ->pick_task() that releases the rq lock leaves every sibling __lock momentarily free, letting __sched_core_flip(false) complete mid-selection and rebind rq_lockp() under it. The selection resumes on the split locks, touching sibling state it no longer protects, and __schedule() finally releases a lock that was never taken while leaking the one that was. Count in-flight core-wide selections in the leader's rq->core_pick_in_flight and make __sched_core_flip() wait for the count to drain. The count only changes under the shared lock, which the flip holds while sampling, so no other ordering is needed. The wait can repeat while selections overlap, but the flip backs off between samples and flips are rare cookie-lifetime events. sched_core_cpu_deactivate() moves the count to the new leader - a stale copy left behind would bias it forever if that CPU later returns as its own leader.
Title sched/core: Make core-sched flips wait for in-flight selections
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-09-13T06:30:18.475Z

Reserved: 2026-09-11T19:38:34.718Z

Link: CVE-2026-89520

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-11T20:19:34.647

Modified: 2026-09-13T07:17:14.323

Link: CVE-2026-89520

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-09-11T19:44:02Z

Links: CVE-2026-89520 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-09-13T08:15:17Z

Weaknesses
  • CWE-366

    Race Condition within a Thread