CVE-2025-38008
Unknown Unknown - Not Provided
BaseFortify

Publication date: 2025-06-18

Last updated on: 2025-11-17

Assigner: kernel.org

Description
In the Linux kernel, the following vulnerability has been resolved: mm/page_alloc: fix race condition in unaccepted memory handling The page allocator tracks the number of zones that have unaccepted memory using static_branch_enc/dec() and uses that static branch in hot paths to determine if it needs to deal with unaccepted memory. Borislav and Thomas pointed out that the tracking is racy: operations on static_branch are not serialized against adding/removing unaccepted pages to/from the zone. Sanity checks inside static_branch machinery detects it: WARNING: CPU: 0 PID: 10 at kernel/jump_label.c:276 __static_key_slow_dec_cpuslocked+0x8e/0xa0 The comment around the WARN() explains the problem: /* * Warn about the '-1' case though; since that means a * decrement is concurrent with a first (0->1) increment. IOW * people are trying to disable something that wasn't yet fully * enabled. This suggests an ordering problem on the user side. */ The effect of this static_branch optimization is only visible on microbenchmark. Instead of adding more complexity around it, remove it altogether.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2025-06-18
Last Modified
2025-11-17
Generated
2026-05-07
AI Q&A
2025-06-18
EPSS Evaluated
2026-05-05
NVD
Affected Vendors & Products
Showing 9 associated CPEs
Vendor Product Version / Range
linux linux_kernel 6.15
linux linux_kernel 6.15
linux linux_kernel 6.15
linux linux_kernel 6.15
linux linux_kernel 6.15
linux linux_kernel 6.15
linux linux_kernel From 5.15.160 (inc) to 5.16 (inc)
linux linux_kernel From 5.15.160 (inc) to 5.16 (inc)
linux linux_kernel From 5.15.160 (inc) to 5.16 (inc)
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-362 The product contains a concurrent code sequence that requires temporary, exclusive access to a shared resource, but a timing window exists in which the shared resource can be modified by another code sequence operating concurrently.
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?

This vulnerability is a race condition in the Linux kernel's memory management, specifically in the page allocator's handling of unaccepted memory. The issue arises because the tracking of zones with unaccepted memory using static_branch_enc/dec() is not properly synchronized, leading to concurrent operations that can cause warnings and potential instability. The problem is related to the static_branch optimization being racy when incrementing or decrementing counters for unaccepted memory zones.


How can this vulnerability impact me? :

The vulnerability can cause race conditions in the kernel's memory management, which may lead to warnings, instability, or unexpected behavior during memory allocation. However, the effect is mainly visible in microbenchmarks, and the fix involves removing the problematic static_branch optimization to avoid complexity and potential errors.


How can this vulnerability be detected on my network or system? Can you suggest some commands?

This vulnerability can be detected by monitoring kernel logs for specific warnings related to the race condition in static_branch handling. Look for messages like: "WARNING: CPU: <cpu> PID: <pid> at kernel/jump_label.c:276 __static_key_slow_dec_cpuslocked". You can use commands such as 'dmesg | grep static_key_slow_dec_cpuslocked' or 'journalctl -k | grep static_key_slow_dec_cpuslocked' to find these warnings in your system logs.


What immediate steps should I take to mitigate this vulnerability?

Immediate mitigation involves updating the Linux kernel to a version where this race condition in unaccepted memory handling has been fixed. Since the issue is related to kernel internals and static branch handling, applying the official patch or upgrading to the fixed kernel release is recommended. Additionally, monitoring kernel logs for the warning can help identify if the issue is occurring.


Ask Our AI Assistant
Need more information? Ask your question to get an AI reply (Powered by our expertise)
0/70
EPSS Chart