CVE-2025-39737
Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
11/09/2025
Last modified:
03/11/2025
Description
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
mm/kmemleak: avoid soft lockup in __kmemleak_do_cleanup()<br />
<br />
A soft lockup warning was observed on a relative small system x86-64<br />
system with 16 GB of memory when running a debug kernel with kmemleak<br />
enabled.<br />
<br />
watchdog: BUG: soft lockup - CPU#8 stuck for 33s! [kworker/8:1:134]<br />
<br />
The test system was running a workload with hot unplug happening in<br />
parallel. Then kemleak decided to disable itself due to its inability to<br />
allocate more kmemleak objects. The debug kernel has its<br />
CONFIG_DEBUG_KMEMLEAK_MEM_POOL_SIZE set to 40,000.<br />
<br />
The soft lockup happened in kmemleak_do_cleanup() when the existing<br />
kmemleak objects were being removed and deleted one-by-one in a loop via a<br />
workqueue. In this particular case, there are at least 40,000 objects<br />
that need to be processed and given the slowness of a debug kernel and the<br />
fact that a raw_spinlock has to be acquired and released in<br />
__delete_object(), it could take a while to properly handle all these<br />
objects.<br />
<br />
As kmemleak has been disabled in this case, the object removal and<br />
deletion process can be further optimized as locking isn&#39;t really needed. <br />
However, it is probably not worth the effort to optimize for such an edge<br />
case that should rarely happen. So the simple solution is to call<br />
cond_resched() at periodic interval in the iteration loop to avoid soft<br />
lockup.
Impact
References to Advisories, Solutions, and Tools
- https://git.kernel.org/stable/c/1ef72a7fedc5bca70e8cc980985790de10d407aa
- https://git.kernel.org/stable/c/8d2d22a55ffe35c38e69795468a7addd1a80e9ce
- https://git.kernel.org/stable/c/926092268efdf1ed7b55cf486356c74a9e7710d1
- https://git.kernel.org/stable/c/9b80430c194e4a114dc663c1025d56b4f3d0153d
- https://git.kernel.org/stable/c/9f1f4e95031f84867c5821540466d62f88dab8ca
- https://git.kernel.org/stable/c/a04de4c40aab9b338dfa989cf4aec70fd187eeb2
- https://git.kernel.org/stable/c/d1534ae23c2b6be350c8ab060803fbf6e9682adc
- https://git.kernel.org/stable/c/e21a3ddd58733ce31afcb1e5dc3cb80a4b5bc29b
- https://git.kernel.org/stable/c/f014c10d190b92aad366e56b445daffcd1c075e4
- https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html
- https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html



