CVE-2025-38085
kernel: mm/hugetlb: fix huge_pmd_unshare() vs GUP-fast race
Severity
ModerateRed Hat Product Security
CVSS 3.1
Review impact separately from score.
Published · June 28, 2025
Updated · October 30, 2026
Description
In the Linux kernel, the following vulnerability has been resolved:
mm/hugetlb: fix huge_pmd_unshare() vs GUP-fast race
huge_pmd_unshare() drops a reference on a page table that may have previously been shared across processes, potentially turning it into a normal page table used in another process in which unrelated VMAs can afterwards be installed.
If this happens in the middle of a concurrent gup_fast(), gup_fast() could end up walking the page tables of another process. While I don't see any way in which that immediately leads to kernel memory corruption, it is really weird and unexpected.
Fix it with an explicit broadcast IPI through tlb_remove_table_sync_one(), just like we do in khugepaged when removing page tables for a THP collapse.
Statement
This flaw is rated as a Moderate severity impact because exploitation requires a local attacker to win a precise timing race between hugetlb page table unsharing and fast page lookup operations. While an attacker could potentially access memory tables associated with another process, the vulnerability requires shared huge page mappings to be actively utilized on the system. The issue cannot be exploited remotely and does not directly lead to kernel code execution.
CVSS score applicability
The CVSS score(s) listed for this vulnerability do not reflect the associated product's status, and are included for informational purposes to better understand the severity of this vulnerability.
Mitigation
No mitigation is specified in collected source.
CVSS / CWE
CVSS 3.1 · 7.1CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H
CWE-200 · Exposure of Sensitive Information to an Unauthorized Actor