CVE Catalog

CVE-2025-39910

MediumCVSS 5.5
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.15%

4th percentile - higher than 4% of all known CVEs

Summary

In the Linux kernel, kasan_populate_vmalloc() and its helpers ignored the caller's gfp_mask and always allocated memory using the hardcoded GFP_KERNEL flag. This made them inconsistent with vmalloc(), which supports GFP_NOFS and GFP_NOIO allocations, and xfs calls to vmalloc with GFP_NOFS could lead to a deadlock.

Risk Assessment

The vulnerability could cause a system deadlock in scenarios where vmalloc is called with GFP_NOFS, such as by the xfs filesystem. This may result in a hang or unavailability of services on the affected system.

Recommendation

Update the Linux kernel to a version containing the fix that passes gfp_mask to kasan_populate_vmalloc() and enforces GFP_NOFS/GFP_NOIO semantics. A reboot is recommended after deployment.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

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/[email protected] 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.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS