CVE-2025-38008
Published: Jun 18, 2025
Modified: May 11, 2026
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.
| Vendor | Product | Versions |
|---|---|---|
Linux | Linux | affected dcdfdd40fa82b6704d2841938e5c8ec3051eb0d6 - < 98fdd2f612e949c652693f6df00442c81037776daffected dcdfdd40fa82b6704d2841938e5c8ec3051eb0d6 - < 74953f93f47a45296cc2a3fd04e2a3202ff3fa53affected dcdfdd40fa82b6704d2841938e5c8ec3051eb0d6 - < 71dda1cb10702dc2859f00eb789b0502de2176a9affected dcdfdd40fa82b6704d2841938e5c8ec3051eb0d6 - < fefc075182275057ce607effaa3daa9e6e3bdc73 |
Linux | Linux | affected 6.5unaffected 0 - < 6.5unaffected 6.6.92 - <= 6.6.*unaffected 6.12.30 - <= 6.12.*unaffected 6.14.8 - <= 6.14.*+1 more versions |
Security Training
Train your team to recognize and prevent security threats with our comprehensive security awareness program.
Start TrainingVulnerability Scanning
Discover vulnerabilities in your applications and infrastructure before attackers do.
Scan Now