CVE-2026-72174: fs/proc/task_mmu: fix hugetlb self-deadlock in pagemap_scan_pte_hole()

Published Aug 15, 2026
·
Updated

In the Linux kernel, the following vulnerability has been resolved:

fs/proc/taskmmu: fix hugetlb self-deadlock in pagemapscanptehole()

A PAGEMAPSCAN ioctl requesting PMSCANWPMATCHING on a hugetlb VMA hangs the calling thread, unkillably, as soon as the scan reaches an unpopulated part of the range:

dopagemapscan() walkpagerange() walkhugetlbrange() hugetlbvmalockread() # take the vma lock for read ... pagemapscanptehole() # ... ->ptehole() for a hole uffdwprange() changeprotection() hugetlbchangeprotection() hugetlbvmalockwrite() # ... and block taking it for write

walkhugetlbrange() holds the hugetlb vma lock for read across the whole walk. A present entry goes to ->hugetlbentry(); an unpopulated one goes to ->ptehole(), i.e. pagemapscanptehole(). To write-protect the hole that handler calls uffdwprange(), which on a hugetlb VMA reaches hugetlbchangeprotection() and takes the same vma lock for write. The thread then blocks in downwrite() waiting for the read lock it is itself holding.

The populated path avoids this: pagemapscanhugetlbentry() write-protects the entry inline under the page-table lock and never enters hugetlbchangeprotection().

Do the same for holes. Fault in the page table and install the uffd-wp marker directly with makeuffdwphugepte() under the page-table lock, rather than routing through uffdwprange(). That is the same sequence hugetlbchangeprotection() runs for an unpopulated entry, minus the vma write lock -- which is safe to skip because PMD sharing is disabled on uffd-wp VMAs (hugetlbunshareallpmds() runs at registration), leaving nothing for that lock to serialise against.

Affected Software

1 affected component
Linux Kernel

Event History

Aug 15, 2026
CVE Published
via MITRE·05:53 AM
Data Sourced
via MITRE·05:53 AM
Description
Data Sourced
via NVD·06:21 AM
Description
Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is the severity of CVE-2026-72174?

CVE-2026-72174 has been assigned a risk level of 17, indicating a serious vulnerability.

2

What is the nature of the vulnerability in CVE-2026-72174?

CVE-2026-72174 is a self-deadlock vulnerability in the Linux kernel's hugetlb memory management during the pagemap_scan_pte_hole() operation.

3

How do I fix CVE-2026-72174?

To fix CVE-2026-72174, you should update your Linux kernel to the latest version where this vulnerability has been resolved.

4

Which systems are affected by CVE-2026-72174?

CVE-2026-72174 affects Linux systems that utilize hugetlb and support the PAGEMAP_SCAN ioctl.

5

Is there a known exploit for CVE-2026-72174?

As of now, there are no public reports of active exploits specifically targeting CVE-2026-72174.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203