CVE-2025-39910

In the Linux kernel, the following vulnerability has been resolved: mm/vmalloc, mm/kasan: respect gfp mask in kasan_populate_vmalloc() kasan_populate_vmalloc() and its helpers ignore the caller's gfp_mask and always allocate memory using the hardcoded GFP_KERNEL flag. This makes them inconsistent with vmalloc(), which was recently extended to support GFP_NOFS and GFP_NOIO allocations. Page table allocations performed during shadow population also ignore the external gfp_mask. To preserve the intended semantics of GFP_NOFS and GFP_NOIO, wrap the apply_to_page_range() calls into the appropriate memalloc scope. xfs calls vmalloc with GFP_NOFS, so this bug could lead to deadlock. There was a report here https://lkml.kernel.org/r/686ea951.050a0220.385921.0016.GAE@google.com This patch: - Extends kasan_populate_vmalloc() and helpers to take gfp_mask; - Passes gfp_mask down to alloc_pages_bulk() and __get_free_page(); - Enforces GFP_NOFS/NOIO semantics with memalloc_*_save()/restore() around apply_to_page_range(); - Updates vmalloc.c and percpu allocator call sites accordingly.
Configurations

Configuration 1 (hide)

OR cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.17:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.17:rc2:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.17:rc3:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.17:rc4:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.17:rc5:*:*:*:*:*:*

History

30 Oct 2026, 13:18

Type Values Removed Values Added
References
  • () https://git.kernel.org/stable/c/c136f2e4f2edd58a62a3425d4dd373d82834d1f9 -

21 Oct 2026, 13:18

Type Values Removed Values Added
References
  • () https://git.kernel.org/stable/c/9598c83a50a5f9d57fd0c12fc08d9425c1ce9537 -
  • () https://git.kernel.org/stable/c/aa1b4b7a1b92743297f9da741424df4703a8e11b -

19 Oct 2026, 21:10

Type Values Removed Values Added
Summary
  • (es) En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta: mm/vmalloc, mm/kasan: respetar la máscara gfp en kasan_populate_vmalloc() kasan_populate_vmalloc() y sus funciones auxiliares ignoran la gfp_mask del llamador y siempre asignan memoria utilizando la bandera GFP_KERNEL codificada. Esto los hace inconsistentes con vmalloc(), que fue extendida recientemente para soportar asignaciones GFP_NOFS y GFP_NOIO. Las asignaciones de tablas de páginas realizadas durante la población de sombra también ignoran la gfp_mask externa. Para preservar la semántica prevista de GFP_NOFS y GFP_NOIO, envuelva las llamadas a apply_to_page_range() dentro del ámbito memalloc apropiado. xfs llama a vmalloc con GFP_NOFS, por lo que este error podría llevar a un interbloqueo. Hubo un informe aquí https://lkml.kernel.org/r/686ea951.050a0220.385921.0016.GAE@google.com Este parche: - Extiende kasan_populate_vmalloc() y sus funciones auxiliares para que acepten gfp_mask; - Pasa gfp_mask a alloc_pages_bulk() y __get_free_page(); - Aplica la semántica de GFP_NOFS/NOIO con memalloc_*_save()/restore() alrededor de apply_to_page_range(); - Actualiza los sitios de llamada del asignador vmalloc.c y percpu en consecuencia.

Information

Published : 2025-10-01 08:15

Updated : 2026-10-30 13:18


NVD link : CVE-2025-39910

Mitre link : CVE-2025-39910

CVE.ORG link : CVE-2025-39910


JSON object : View

Products Affected

linux

  • linux_kernel
CWE
CWE-667

Improper Locking