What’s Vulnerable › Vulnerabilities
CVE-2021-47577: io-wq: check for wq exit after adding new worker task_work
- Severity: medium (CVSS 4.7 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.1% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2024-06-19 · updated 2026-08-04
- Weakness: CWE-362
Description
In the Linux kernel, the following vulnerability has been resolved: io-wq: check for wq exit after adding new worker task_work We check IO_WQ_BIT_EXIT before attempting to create a new worker, and wq exit cancels pending work if we have any. But it's possible to have a race between the two, where creation checks exit finding it not set, but we're in the process of exiting. The exit side will cancel pending creation task_work, but there's a gap where we add task_work after we've canceled existing creations at exit time. Fix this by checking the EXIT bit post adding the creation task_work. If it's set, run the same cancelation that exit does.
Affected products
- Linux kernel: before 5.15.11; 5.16-rc1, 5.16-rc2, 5.16-rc3, 5.16-rc4 — fixed in 5.15.11
How to fix
Upgrade to a fixed version: Linux kernel 5.15.11. Check the vendor advisory for mitigations.
References
- https://git.kernel.org/stable/c/4b4e5bbf9386d4ec21d91c0cb0fd60b9bba778ec
- https://git.kernel.org/stable/c/71a85387546e50b1a37b0fa45dadcae3bfb35cf6
- https://git.kernel.org/stable/c/4b4e5bbf9386d4ec21d91c0cb0fd60b9bba778ec
- https://git.kernel.org/stable/c/71a85387546e50b1a37b0fa45dadcae3bfb35cf6
Get alerted when CVE-2021-47577 or the next vulnerability affects your stack