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.
CVSS Details
- CVSS 3.1 Base Score: 5.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon_linux_2023 | — | Upgrade kernel6.18-tools-debuginfoUpgrade kernel6.12-debuginfo-common-aarch64Upgrade bpftool6.12-debuginfoUpgrade perf6.12Upgrade kernel6.18-debuginfo-common-aarch64Upgrade kernel6.18-modules-extra-commonUpgrade python3-perf6.18Upgrade perf6.18-debuginfoUpgrade bpftool6.18Upgrade kernel-livepatch-6.12.94-123.174Upgrade kernel6.12-headersUpgrade kernel-livepatch-6.18.36-69.134Upgrade kernel6.12Upgrade kernel6.12-modules-extraUpgrade python3-perf6.18-debuginfoUpgrade kernel6.12-toolsUpgrade microvm-kernel6.18Upgrade perf6.12-debuginfoUpgrade kernel6.18-develUpgrade kernel6.12-tools-develUpgrade bpftool6.12Upgrade kernel6.12-develUpgrade kernel6.12-tools-debuginfoUpgrade kernel6.12-debuginfoUpgrade python3-perf6.12-debuginfoUpgrade kernel6.18Upgrade perf6.18Upgrade kernel6.18-headersUpgrade kernel6.12-debuginfo-common-x86_64Upgrade bpftool6.18-debuginfoUpgrade kernel6.18-tools-develUpgrade kernel6.18-toolsUpgrade python3-perf6.12Upgrade kernel6.18-debuginfo-common-x86_64Upgrade kernel6.18-modules-extraUpgrade kernel6.18-debuginfoUpgrade kernel6.12-modules-extra-common | Jul 21, 2026 | Jun 25, 2026 |
| Debian | — | Upgrade linux | Jul 23, 2026 | Jul 23, 2026 |
| Redhat_linux | — | No solution exists | Jul 17, 2026 | Jun 25, 2026 |
| Ubuntu | — | Upgrade linux-image-generic-64kUpgrade linux-image-ibmUpgrade linux-image-raspiUpgrade linux-image-nvidia-bos-64k-7.0Upgrade linux-image-7.0.0-1011-gcpUpgrade linux-image-7.0.0-1012-awsUpgrade linux-image-7.0.0-31-realtimeUpgrade linux-image-nvidiaUpgrade linux-image-7.0.0-1006-gkeUpgrade linux-image-nvidia-64k-7.0Upgrade linux-image-7.0.0-1012-aws-64kUpgrade linux-image-nvidia-7.0Upgrade linux-image-7.0.0-1011-gcp-64kUpgrade linux-image-oem-26.04bUpgrade linux-image-virtual-hwe-26.04Upgrade linux-image-nvidia-bos-64kUpgrade linux-image-7.0.0-1013-ibmUpgrade linux-image-oem-26.04aUpgrade linux-image-7.0.0-1011-oracleUpgrade linux-image-azure-7.0Upgrade linux-image-7.0.0-31-realtime-64kUpgrade linux-image-oem-26.04Upgrade linux-image-generic-hwe-24.04Upgrade linux-image-7.0.0-1018-nvidiaUpgrade linux-image-nvidia-bosUpgrade linux-image-oracle-7.0Upgrade linux-image-ibm-7.0Upgrade linux-image-azure-lts-26.04Upgrade linux-image-azureUpgrade linux-image-gke-64kUpgrade linux-image-7.0.0-2018-nvidia-bosUpgrade linux-image-gke-64k-7.0Upgrade linux-image-oem-7.0Upgrade linux-image-gcp-64kUpgrade linux-image-genericUpgrade linux-image-7.0.0-2018-nvidia-bos-64kUpgrade linux-image-raspi-7.0Upgrade linux-image-realtime-64k-hwe-26.04Upgrade linux-image-generic-64k-hwe-26.04Upgrade linux-image-nvidia-64kUpgrade linux-image-gke-7.0Upgrade linux-image-realtime-64k-7.0Upgrade linux-image-nvidia-hwe-26.04Upgrade linux-image-nvidia-bos-7.0Upgrade linux-image-7.0.0-1014-azureUpgrade linux-image-7.0.0-31-genericUpgrade linux-image-realtimeUpgrade linux-image-gcp-64k-7.0Upgrade linux-image-awsUpgrade linux-image-virtualUpgrade linux-image-raspi-realtime-7.0Upgrade linux-image-gcpUpgrade linux-image-oracle-64kUpgrade linux-image-gcp-7.0Upgrade linux-image-aws-7.0Upgrade linux-image-7.0.0-1011-oracle-64kUpgrade linux-image-7.0.0-1019-raspiUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-gke-64k-hwe-26.04Upgrade linux-image-virtual-7.0Upgrade linux-image-realtime-hwe-26.04Upgrade linux-image-aws-64kUpgrade linux-image-7.0.0-1019-raspi-realtimeUpgrade linux-image-oracle-64k-7.0Upgrade linux-image-generic-7.0Upgrade linux-image-realtime-7.0Upgrade linux-image-gke-hwe-26.04Upgrade linux-image-generic-64k-7.0Upgrade linux-image-7.0.0-31-generic-64kUpgrade linux-image-7.0.0-1013-oemUpgrade linux-image-oracleUpgrade linux-image-nvidia-64k-hwe-26.04Upgrade linux-image-realtime-64kUpgrade linux-image-raspi-realtimeUpgrade linux-image-7.0.0-1018-nvidia-64kUpgrade linux-image-gkeUpgrade linux-image-generic-hwe-26.04Upgrade linux-image-virtual-hwe-24.04Upgrade linux-image-aws-64k-7.0Upgrade linux-image-7.0.0-1006-gke-64k | Sep 14, 2026 | Sep 7, 2026 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jul 13, 2026 | Jun 25, 2026 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub