Skip to content
CVE PROGRAM SOURCE RECORD7.5 High

CVE-2026-31467

erofs: add GFP_NOIO in the bio completion if needed

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.

Affected products

Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.

Linux Linux

Default version status: unaffected

  • 648f2de053a882c87c05f0060f47d3b11841fdbe to < d6565ea662e17d45a577184b0011bd69de22dc2baffected
  • 648f2de053a882c87c05f0060f47d3b11841fdbe to < d9d8360cb66e3b599d89d2526e7da8b530ebf2ffaffected
  • 648f2de053a882c87c05f0060f47d3b11841fdbe to < 5c8ecdcfbfb0b0c6a82a4ebadc1ddea61609b902affected
  • 648f2de053a882c87c05f0060f47d3b11841fdbe to < 378949f46e897204384f3f5f91e42e93e3f87568affected
  • 648f2de053a882c87c05f0060f47d3b11841fdbe to < da40464064599eefe78749f75cd2bba371044c04affected
  • 648f2de053a882c87c05f0060f47d3b11841fdbe to < e83e20b82859f0588e9a52a6fa9fea704a2061cfaffected
  • 648f2de053a882c87c05f0060f47d3b11841fdbe to < c23df30915f83e7257c8625b690a1cece94142a0affected

Linux Linux

Default version status: affected

  • 5.13affected
  • 0 to < 5.13unaffected
  • 5.15.203 to ≤ 5.15.*unaffected
  • 6.1.168 to ≤ 6.1.*unaffected
  • 6.6.131 to ≤ 6.6.*unaffected
  • 6.12.80 to ≤ 6.12.*unaffected
  • 6.18.21 to ≤ 6.18.*unaffected
  • 6.19.11 to ≤ 6.19.*unaffected
  • 7.0 to ≤ *unaffected

References