CVE-2025-38522: sched/ext: Prevent update_locked_rq() calls with NULL rq
In the Linux kernel, the following vulnerability has been resolved:
sched/ext: Prevent update_locked_rq() calls with NULL rq
Avoid invoking update_locked_rq() when the runqueue (rq) pointer is NULL
in the SCX_CALL_OP and SCX_CALL_OP_RET macros.
Previously, calling update_locked_rq(NULL) with preemption enabled could
trigger the following warning:
BUG: using __this_cpu_write() in preemptible [00000000]
This happens because __this_cpu_write() is unsafe to use in preemptible
context.
rq is NULL when an ops invoked from an unlocked context. In such cases, we
don't need to store any rq, since the value should already be NULL
(unlocked). Ensure that update_locked_rq() is only called when rq is
non-NULL, preventing calling __this_cpu_write() on preemptible context.
Security readout for executives and security teams
Plain-English summary
This Linux kernel issue can trigger an unsafe per-CPU write path when scheduler extension code is called without a runqueue. The public record describes a kernel warning rather than a confirmed compromise path. No CVSS score, CWE, or active exploitation evidence is provided.
Executive priority
Handle through normal kernel patch governance, with higher priority for systems using sched_ext or rapidly tracking mainline kernels. The current evidence does not support emergency treatment, but the affected component is kernel-level.
Technical view
The fix prevents SCX_CALL_OP and SCX_CALL_OP_RET from calling update_locked_rq() when rq is NULL. The NULL rq case occurs for ops invoked from an unlocked context. Calling update_locked_rq(NULL) with preemption enabled can reach __this_cpu_write(), which is unsafe in preemptible context.
Likely exposure
Exposure is limited to Linux systems running affected kernel builds listed in the source bundle, especially around 6.15, 6.15.8, and 6.16 entries. Distribution backports may change status, so package-level vendor mapping is required.
Exploitation context
The bundle does not cite exploitation in the wild, and KEV status is false. The described behavior is a kernel warning path tied to sched/ext internals; no public source here establishes attacker control, privilege impact, or exploitability.
Researcher notes
Key evidence is narrow: a NULL rq guard in sched/ext macro paths prevents update_locked_rq(NULL) in preemptible context. Missing CVSS, CWE, exploitability analysis, and distro-specific affected ranges limit risk precision.
Mitigation direction
Apply a vendor kernel update containing the referenced stable fixes.
Check distribution advisories for backported fix status.
Prioritize hosts using or testing Linux scheduler extensions.
If patching is delayed, follow vendor guidance; no source-named workaround is provided.
Validation and detection
Inventory Linux kernel versions across affected fleets.
Identify systems where sched_ext is enabled, tested, or operationally relevant.
Compare kernel package changelogs against the referenced stable commits.
Review kernel logs for the cited preemptible __this_cpu_write warning.
Confirm patched kernels in staging before production rollout.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2025-38522 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
0CVSS vectors
3Timeline events
0ADP providers
3Source links
Vulnerability timeline
Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.
CVE reservedCVE Program
The CVE ID was reserved by the assigning CNA.
CVE publishedCVE Program
The CVE record was published.
Aug 16, 2025, 11:12 UTC (UTC+00:00)
CVE updatedCVE Program
The CVE record metadata indicates this as the latest update time.