CVE-2026-53154mm/hugetlb: restore reservation on error in hugetlb folio copy paths
- 5.5MediumCVSS base score
- 0.12%Exploitation in 30 daysEPSS · top 98% of all CVEs
- NoKnown exploitednot in CISA's KEV catalog
- NonePublic exploitsnone known yet
Description
In the Linux kernel, the following vulnerability has been resolved: mm/hugetlb: restore reservation on error in hugetlb folio copy paths Two sites in mm/hugetlb.c allocate a hugetlb folio via alloc_hugetlb_folio() (consuming a VMA reservation) and then call copy_user_large_folio(), which became int-returning in commit 1cb9dc4b475c ("mm: hwpoison: support recovery from HugePage copy-on-write faults") and can now fail (e.g. -EHWPOISON on a hwpoisoned source page). On the failure path, folio_put() restores the global hugetlb pool count through free_huge_folio(), but the per-VMA reservation map entry is left marked consumed: - hugetlb_mfill_atomic_pte() resubmission path (UFFDIO_COPY) - copy_hugetlb_page_range() fork-time CoW path when hugetlb_try_dup_anon_rmap() fails (rare: pinned hugetlb anon folio under fork) User-visible effect: on UFFDIO_COPY into a private hugetlb VMA where the resubmission copy fails, the reservation for that address is leaked from the VMA's reserve map. A subsequent fault at the same address takes the no-reservation path, and under hugetlb pool pressure the task is SIGBUSed at an address it had previously reserved. The fork-time CoW path leaks the same way in the child VMA's reserve map, though it requires the much rarer combination of pinned hugetlb anon page + hwpoisoned source. Add the missing restore_reserve_on_error() call before folio_put() on both error paths.
Timeline
ID reserved
By Linux
- 16 days later
· 16 days later
Published
- 4 months later
· 4 months later
Record updated
Changes after publication (a new score, a public exploit, EPSS crossing 1, 10 or 50 %, leaving KEV) are kept since November 2026; earlier ones are not known.
Scores
| Scored by | CVSS | Score | Vector |
|---|---|---|---|
| NVDNVD · Analyzed | 3.1 | Medium5.5 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H |
- EPSS (exploitation in 30 days)
- 0.12% · top 98% of all CVEs (14 Nov 2026)
- CISA SSVC
- Exploitation: none · Automatable: no · Technical impact: partial
The list uses the assigner's score when there is one, then CISA's, then NVD's: Medium 5.5.
Affected products
- affected 1cb9dc4b475c7418f925ab0c97b6750007d9f52e – < 8d6e1dd3ad1340cd8b6d554b7aa93d8f0a1c6d38
- affected 1cb9dc4b475c7418f925ab0c97b6750007d9f52e – < e47bf16af3c45470ea32f2241fa69aefe0dd61bd
- affected 1cb9dc4b475c7418f925ab0c97b6750007d9f52e – < c72469ac0f274bde3f0df60a4584e14a123d0aa6
- affected 1cb9dc4b475c7418f925ab0c97b6750007d9f52e – < 45e33d43243d71d089af42f5077b8213cee6610f
- affected 1cb9dc4b475c7418f925ab0c97b6750007d9f52e – < 40c81856e622a9dc59294a90d169ac07ea25b0b0
- affected 6.4
- unaffected < 6.4
- unaffected 6.6.143 – ≤ 6.6.*
- unaffected 6.12.94 – ≤ 6.12.*
- unaffected 6.18.36 – ≤ 6.18.*
- unaffected 7.0.13 – ≤ 7.0.*
- unaffected 7.1 – ≤ *
References
References5
- https://git.kernel.org/stable/c/8d6e1dd3ad1340cd8b6d554b7aa93d8f0a1c6d38 (opens in a new tab)
- https://git.kernel.org/stable/c/e47bf16af3c45470ea32f2241fa69aefe0dd61bd (opens in a new tab)
- https://git.kernel.org/stable/c/c72469ac0f274bde3f0df60a4584e14a123d0aa6 (opens in a new tab)
- https://git.kernel.org/stable/c/45e33d43243d71d089af42f5077b8213cee6610f (opens in a new tab)
- https://git.kernel.org/stable/c/40c81856e622a9dc59294a90d169ac07ea25b0b0 (opens in a new tab)
Sources
The same CVE in the primary databases and aggregators, to check against.
- CVE.org record (opens in a new tab)
- CVE List JSON (GitHub) (opens in a new tab)
- NVD (opens in a new tab)
- FIRST EPSS (opens in a new tab)
- EUVD EUVD-2026-39245 (opens in a new tab)
- OSV.dev (opens in a new tab)
- GitHub Advisories (opens in a new tab)
- CIRCL Vulnerability-Lookup (opens in a new tab)
Badge for a README or a ticket
[](https://cveledger.app/cve/CVE-2026-53154)Record last updated .