PatchSiren cyber security CVE debrief
CVE-2026-46154 Linux CVE debrief
A use-after-free (UAF) vulnerability exists in the Linux kernel's sched_ext (SCX) subsystem. The flaw occurs in cgroup setter functions `scx_group_set_{weight,idle,bandwidth}()` where `scx_root` is cached before acquiring the `scx_cgroup_ops_rwsem` lock. This creates a race window: if a scheduler is disabled and freed via RCU work, and a new scheduler is enabled between the naked load and the rwsem acquire, the code sees `scx_cgroup_enabled=true` (from the new scheduler) but dereferences the freed scheduler structure. This leads to UAF when executing `SCX_HAS_OP(sch, ...)` or `SCX_CALL_OP(sch, ...)`. The fix moves the `scx_root` read inside the rwsem read section, ensuring the scheduler pointer correlates with the enabled state snapshot.
- Vendor
- Linux
- Product
- Unknown
- CVSS
- HIGH 7
- CISA KEV
- Not listed in stored evidence
- Original CVE published
- 2026-05-28
- Original CVE updated
- 2026-06-09
- Advisory published
- 2026-05-28
- Advisory updated
- 2026-06-09
Who should care
Linux kernel administrators, container platform operators using cgroups with sched_ext, cloud providers offering container services on Linux, and organizations running workloads with custom SCX schedulers
Technical summary
The sched_ext (SCX) subsystem in the Linux kernel contains a use-after-free vulnerability in cgroup setter functions. The functions `scx_group_set_weight()`, `scx_group_set_idle()`, and `scx_group_set_bandwidth()` cache the `scx_root` pointer before acquiring the `scx_cgroup_ops_rwsem` read lock. This creates a race condition: between the naked load of `scx_root` and the semaphore acquisition, a loaded scheduler may be disabled and freed via RCU work, while a new scheduler is enabled. The code then sees `scx_cgroup_enabled=true` (reflecting the new scheduler) but dereferences the freed old scheduler structure when executing `SCX_HAS_OP()` or `SCX_CALL_OP()` macros. The vulnerability is fixed by reading `scx_root` inside the rwsem read section, ensuring the scheduler pointer and enabled state are consistent. The `scx_cgroup_enabled` flag is toggled only under `scx_cgroup_ops_rwsem` write lock during `scx_cgroup_init()` and `scx_cgroup_exit()`, so this change properly correlates the scheduler pointer with the enabled snapshot.
Defensive priority
high
Recommended defensive actions
- Apply kernel patches from stable branches when available
- Monitor Linux kernel stable releases for backported fixes
- Review systems using sched_ext (SCX) schedulers for cgroup weight/idle/bandwidth configuration changes
- Consider disabling sched_ext if not required until patches are applied
- Audit for any scheduler loading/unloading patterns that could trigger the race condition
Evidence notes
The vulnerability description indicates this is a resolved issue in the Linux kernel sched_ext subsystem. The fix involves reading `scx_root` under `scx_cgroup_ops_rwsem` protection in cgroup setter functions to prevent UAF when scheduler transitions occur.
Sources and references
Verified primary and authoritative sources
-
CVE-2026-46154 CVE Program record
Publisher, destination, and source semantics verified
URL: https://www.cve.org/CVERecord?id=CVE-2026-46154
CVE Program - Official CVE Program record with source-provided CVE metadata.
-
CVE-2026-46154 NVD vulnerability detail
Publisher, destination, and source semantics verified
URL: https://nvd.nist.gov/vuln/detail/CVE-2026-46154
NIST National Vulnerability Database - Official NIST NVD detail page and source-specific vulnerability assessment.
Supplemental references
-
Source reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/0f54f6355575971673d8aac7da107ec4178e45bd
416baaa9-dc9f-4396-8d5f-8c081fb06d67
-
Source reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/80afd4c84bc8f5e80145ce35279f5ce53f6043db
416baaa9-dc9f-4396-8d5f-8c081fb06d67
-
Source reference
Unverified legacy reference
URL: https://git.kernel.org/stable/c/ce9aaa3af445c391735c9d000c4db60dfd5640d4
416baaa9-dc9f-4396-8d5f-8c081fb06d67
Methodology and review provenance
AI-assisted synthesis based on stored public vulnerability evidence. System validation, approval state, and publication status do not by themselves establish human review of this revision. PatchSiren helps prioritize defensive review and does not prove exposure or remediation on any system.