CVE-2025-21694
Medium · 5.5CVSS
5.5
EPSS
0.2%
Published
Feb 12, 2025
CISA due date
—
Cloudanix analysis
A bug in the Linux kernel can freeze crash-dump collection when memory is very low, making it harder for teams to diagnose serious system problems.
- Exploitation
- Local Privilege
- Attacker needs
- Low Privilege
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- OS kernel
- Class
- Denial of service
- Remediation
- Patch
- Effort
- Medium
- Patch risk
- Low
What it actually does
The flaw allows softlockups during __read_vmcore execution in memory-constrained kdump environments by lacking sufficient rescheduling points in the second loop, which can block RCU memory freeing and stall the crashdump process.
Why it matters to the business
Organizations may experience failed or delayed kernel crash dumps on affected Linux systems under memory pressure, increasing downtime during incidents and complicating root-cause analysis for production failures.
How an attack unfolds
An attacker with local access triggers repeated reads of /proc/vmcore in a low-memory kdump context; without cond_resched calls the loop spins long enough to trigger softlockups that interfere with RCU and hang the dump, preventing successful crash collection.
How to fix it
Upgrade the Linux kernel to a fixed version such as 5.4.290 or commit 84c4ed15626574c9ac6c1039ba9c137a77bcc7f2 (or later stable releases containing the cond_resched addition). Rebuild and redeploy initramfs images used for kdump after the update.
How to confirm the fix worked
Confirm the running kernel reports the patch commit or version 5.4.290+, then reproduce a kdump under memory pressure and verify absence of softlockup warnings in the dump logs.
Typical attack path
- Obtain local user or process execution on a Linux system configured for kdump
- Force the system into a memory-constrained state matching kdump image limits
- Trigger repeated access to vmcore data paths that exercise the second loop in __read_vmcore
- Observe softlockup messages and subsequent stall of RCU and crashdump completion
How to detect it
Review kernel logs and kdump output for repeated softlockup messages referencing __read_vmcore; inspect audit or process accounting for local processes repeatedly accessing /proc/vmcore shortly before dump failures.
What your security team should do
- Prioritize kernel upgrades on systems that rely on kdump for production troubleshooting
- Test kdump functionality after applying fixes in staging environments that mimic memory-constrained conditions
- Monitor EPSS and threat actor reports for any rise in local DoS techniques targeting kernel procfs paths
The record
In the Linux kernel, the following vulnerability has been resolved: fs/proc: fix softlockup in __read_vmcore (part 2) Since commit 5cbcb62dddf5 ("fs/proc: fix softlockup in __read_vmcore") the number of softlockups in __read_vmcore at kdump time have gone down, but they still happen sometimes. In a memory constrained environment like the kdump image, a softlockup is not just a harmless message, but it can interfere with things like RCU freeing memory, causing the crashdump to get stuck. The second loop in __read_vmcore has a lot more opportunities for natural sleep points, like scheduling out while waiting for a data write to happen, but apparently that is not always enough. Add a cond_resched() to the second loop in __read_vmcore to (hopefully) get rid of the softlockups.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:11 | linux | 0 | No fix |
| Debian:11 | linux | 0 | 5.10.234-1 |
| Debian:11 | linux-6.1 | 0 | 6.1.128-1~deb11u1 |
| Debian:11 | linux-6.1 | 0 | 6.1.6.1.128-1~deb11u1 |
| Debian:12 | linux | 0 | 6.1.128-1 |
| Debian:13 | linux | 0 | 6.12.11-1 |
| Linux | Kernel | 0 | 5.4.290 |
Related vulnerabilities
- CVE-2025-39885 In the Linux kernel, the following vulnerability has been resolved: ocfs2: fix recursive… Also affects linux
- CVE-2025-39883 In the Linux kernel, the following vulnerability has been resolved: mm/memory-failure… Also affects linux
- CVE-2025-39876 In the Linux kernel, the following vulnerability has been resolved: net: fec: Fix… Also affects linux
- CVE-2025-39869 In the Linux kernel, the following vulnerability has been resolved: dmaengine: ti: edma… Also affects linux
- CVE-2025-39873 In the Linux kernel, the following vulnerability has been resolved: can: xilinx_can… Also affects linux
- CVE-2025-39863 In the Linux kernel, the following vulnerability has been resolved: wifi: brcmfmac: fix… Also affects linux
- CVE-2025-39865 In the Linux kernel, the following vulnerability has been resolved: tee: fix NULL pointer… Also affects linux
- CVE-2025-39866 In the Linux kernel, the following vulnerability has been resolved: fs: writeback: fix… Also affects linux