CVE-2025-40153
kernel: Linux kernel: Denial of Service via mprotect() on huge transparent huge pages
Severity
ModerateRed Hat Product Security
CVSS 3.1
Review impact separately from score.
Published · November 12, 2025
Updated · June 30, 2026
Description
A flaw was found in the Linux kernel. A local user with the ability to allocate or utilize large transparent huge pages (hugetlb) memory regions could trigger a system-wide Denial of Service (DoS). This occurs when the mprotect() function is applied to these large hugetlb areas, causing the kernel to enter a prolonged loop without allowing other processes to run, leading to a CPU soft-lockup. This vulnerability stems from the hugetlb_change_protection() function lacking appropriate rescheduling points during operations on extensive memory ranges.
Statement
hugetlb_change_protection() performs long-running loops when mprotect() is applied to very large hugetlb ranges, causing CPU soft-lockups because no rescheduling point exists. Any local user who can allocate or use large hugetlb regions can trigger the stall by calling mprotect() over hundreds of gigabytes.
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 · 5.5CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
CWE-667 · Improper Locking