CVE-2026-31467: Linux kernel · erofs: add GFP_NOIO in the bio completion if needed
Affects Linux kernelSource GCVE Database
Not known to be exploited · CVSS 7.5 High.
Data as of 12 Nov 2026, 00:34 UTC
Thin evidence
One scorer or none| CNA (Linux) | CVSS 3.1 | 7.5 |
|---|
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:HExploitation evidence
Disclosed: evidence found.
CVE published 22 Apr 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponized: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 11 Nov 2026.
Description
In the Linux kernel, the following vulnerability has been resolved: erofs: add GFP_NOIO in the bio completion if needed The bio completion path in the process context (e.g. dm-verity) will directly call into decompression rather than trigger another workqueue context for minimal scheduling latencies, which can then call vm_map_ram() with GFP_KERNEL. Due to insufficient memory, vm_map_ram() may generate memory swapping I/O, which can cause submit_bio_wait to deadlock in some scenarios. Trimmed down the call stack, as follows: f2fs_submit_read_io submit_bio //bio_list is initialized. mmc_blk_mq_recovery z_erofs_endio vm_map_ram __pte_alloc_kernel __alloc_pages_direct_reclaim shrink_folio_list __swap_writepage submit_bio_wait //bio_list is non-NULL, hang!!! Use memalloc_noio_{save,restore}() to wrap up this path.
References
- git.kernel.org/stable/c/d6565ea662e17d45a577184b0011bd69de22dc2b (opens in a new tab)
- git.kernel.org/stable/c/d9d8360cb66e3b599d89d2526e7da8b530ebf2ff (opens in a new tab)
- git.kernel.org/stable/c/5c8ecdcfbfb0b0c6a82a4ebadc1ddea61609b902 (opens in a new tab)
- git.kernel.org/stable/c/378949f46e897204384f3f5f91e42e93e3f87568 (opens in a new tab)
- git.kernel.org/stable/c/da40464064599eefe78749f75cd2bba371044c04 (opens in a new tab)
- git.kernel.org/stable/c/e83e20b82859f0588e9a52a6fa9fea704a2061cf (opens in a new tab)
- git.kernel.org/stable/c/c23df30915f83e7257c8625b690a1cece94142a0 (opens in a new tab)