What’s Vulnerable › Vulnerabilities
CVE-2025-21786: workqueue: Put the pwq after detaching the rescuer from the pool
- Severity: high (CVSS 7.8 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.2% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2025-02-27 · updated 2026-06-17
- Weakness: CWE-416
Description
In the Linux kernel, the following vulnerability has been resolved: workqueue: Put the pwq after detaching the rescuer from the pool The commit 68f83057b913("workqueue: Reap workers via kthread_stop() and remove detach_completion") adds code to reap the normal workers but mistakenly does not handle the rescuer and also removes the code waiting for the rescuer in put_unbound_pool(), which caused a use-after-free bug reported by Cheung Wall. To avoid the use-after-free bug, the pool’s reference must be held until the detachment is complete. Therefore, move the code that puts the pwq after detaching the rescuer from the pool.
Affected products
- Linux kernel: before 6.12.16; from 6.13 before 6.13.4 — fixed in 6.12.16, 6.13.4
How to fix
Upgrade to a fixed version: Linux kernel 6.12.16, 6.13.4. Check the vendor advisory for mitigations.
References
- https://git.kernel.org/stable/c/835b69c868f53f959d4986bbecd561ba6f38e492
- https://git.kernel.org/stable/c/e76946110137703c16423baf6ee177b751a34b7e
- https://git.kernel.org/stable/c/e7c16028a424dd35be1064a68fa318be4359310f
Get alerted when CVE-2025-21786 or the next vulnerability affects your stack