CVE-2023-52932 mm/swapfile: add cond_resched() in get_swap_pages()
A missing scheduling call in the Linux kernel swap subsystem can cause a softlockup under high memory pressure, leading to system unavailability.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2023-52932?
CVE-2023-52932 is a medium-severity denial of service vulnerability in Linux kernel, published on 27 Mar 2025. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
In the Linux kernel, the following vulnerability has been resolved:
mm/swapfile: add cond_resched() in get_swap_pages()
The softlockup still occurs in get_swap_pages() under memory pressure. 64 CPU cores, 64GB memory, and 28 zram devices, the disksize of each zram device is 50MB with same priority as si. Use the stress-ng tool to increase memory pressure, causing the system to oom frequently.
The plist_for_each_entry_safe() loops in get_swap_pages() could reach tens of thousands of times to find available space (extreme case: cond_resched() is not called in scan_swap_map_slots()). Let's add cond_resched() into get_swap_pages() when failed to find available space to avoid softlockup.
Weakness: CWE-667
Which versions are affected by CVE-2023-52932?
It affects 1 product.
Products include Linux kernel.
How do I fix CVE-2023-52932?
Apply the vendor's patch.
Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.
Is CVE-2023-52932 being exploited?
There is no known exploitation of CVE-2023-52932 in the wild and no public exploit code.
Other vulnerabilities in Linux kernel
Sources
Also known as BELL-CVE-2023-52932, DEBIAN-CVE-2023-52932, GHSA-443g-xxfv-37vx, UBUNTU-CVE-2023-52932.