In the Linux kernel, the following vulnerability has been resolved:
mm/hugetlb: fix hugetlb_pmd_shared()
Patch series "mm/hugetlb: fixes for PMD table sharing (incl. using mmu_gather)", v3.
One functional fix, one performance regression fix, and two related comment fixes.
I cleaned up my prototype I recently shared [1] for the performance fix, deferring most of the cleanups I had in the prototype to a later point. While doing that I identified the other things.
The goal of this patch set is to be backported to stable trees "fairly" easily. At least patch #1 and #4.
Patch #1 fixes hugetlb_pmd_shared() not detecting any sharing Patch #2 + #3 are simple comment fixes that patch #4 interacts with. Patch #4 is a fix for the reported performance regression due to excessive IPI broadcasts during fork()+exit().
The last patch is all about TLB flushes, IPIs and mmu_gather. Read: complicated
There are plenty of cleanups in the future to be had + one reasonable optimization on x86. But that's all out of scope for this series.
Runtime tested, with a focus on fixing the performance regression using the original reproducer [2] on x86.
This patch (of 4):
We switched from (wrongly) using the page count to an independent shared count. Now, shared page tables have a refcount of 1 (excluding speculative references) and instead use ptdesc->pt_share_count to identify sharing.
We didn't convert hugetlb_pmd_shared(), so right now, we would never detect a shared PMD table as such, because sharing/unsharing no longer touches the refcount of a PMD table.
Page migration, like mbind() or migrate_pages() would allow for migrating folios mapped into such shared PMD tables, even though the folios are not exclusive. In smaps we would account them as "private" although they are "shared", and we would be wrongly setting the PM_MMAP_EXCLUSIVE in the pagemap interface.
Fix it by properly using ptdesc_pmd_is_shared() in hugetlb_pmd_shared().
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon_linux_2023 | — | Upgrade kernel-debuginfoUpgrade kernel-headersUpgrade kernel6.12-modules-extra-commonUpgrade kernel-libbpf-develUpgrade bpftool6.12-debuginfoUpgrade python3-perfUpgrade kernel6.12-develUpgrade kernel-tools-develUpgrade python3-perf6.12-debuginfoUpgrade kernel-develUpgrade kernel-libbpf-staticUpgrade kernel6.12-libbpfUpgrade kernelUpgrade kernel-tools-debuginfoUpgrade kernel6.12-debuginfoUpgrade kernel-modules-extraUpgrade python3-perf6.12Upgrade kernel-libbpfUpgrade perf-debuginfoUpgrade perf6.12Upgrade kernel6.12-debuginfo-common-x86_64Upgrade kernel-livepatch-6.12.74-98.124Upgrade kernel6.12Upgrade kernel6.12-debuginfo-common-aarch64Upgrade kernel6.12-toolsUpgrade kernel6.12-tools-develUpgrade bpftool6.12Upgrade kernel-debuginfo-common-x86_64Upgrade kernel6.12-modules-extraUpgrade python3-perf-debuginfoUpgrade perfUpgrade kernel6.12-tools-debuginfoUpgrade kernel-livepatch-6.1.168-202.320Upgrade kernel6.12-libbpf-develUpgrade kernel6.12-libbpf-debuginfoUpgrade kernel-libbpf-debuginfoUpgrade perf6.12-debuginfoUpgrade bpftool-debuginfoUpgrade kernel-toolsUpgrade kernel6.12-libbpf-staticUpgrade kernel6.12-headersUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-modules-extra-commonUpgrade bpftool | Mar 27, 2026 | Feb 4, 2026 |
| Debian | — | Upgrade linuxUpgrade linux-6.1 | May 3, 2026 | May 3, 2026 |
| Oracle_linux | — | Upgrade kernel-uek | Mar 25, 2026 | Feb 4, 2026 |
| Redhat_linux | — | No solution exists | Jul 17, 2026 | Feb 4, 2026 |
| Ubuntu | — | Upgrade linux-image-5.15.0-1112-awsUpgrade linux-image-azure-6.17Upgrade linux-image-virtualUpgrade linux-image-gke-5.15Upgrade linux-image-oem-24.04dUpgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-raspi-realtime-6.8Upgrade linux-image-generic-6.8Upgrade linux-image-raspi-realtimeUpgrade linux-image-oracle-64k-6.8Upgrade linux-image-oem-24.04bUpgrade linux-image-generic-5.15Upgrade linux-image-aws-64k-6.8Upgrade linux-image-6.8.0-1060-aws-fipsUpgrade linux-image-6.8.0-1060-raspiUpgrade linux-image-fips-6.8Upgrade linux-image-intel-iot-realtime-5.15Upgrade linux-image-6.17.0-1019-oracle-64kUpgrade linux-image-oem-24.04aUpgrade linux-image-6.17.0-1021-azureUpgrade linux-image-6.8.0-1058-nvidia-lowlatencyUpgrade linux-image-intel-iotg-5.15Upgrade linux-image-gkeopUpgrade linux-image-6.17.0-1031-nvidiaUpgrade linux-image-oem-20.04dUpgrade linux-image-5.15.0-1106-raspiUpgrade linux-image-6.8.0-1063-gcp-fipsUpgrade linux-image-lowlatencyUpgrade linux-image-oracleUpgrade linux-image-5.15.0-1117-azure-fdeUpgrade linux-image-5.15.0-184-lowlatency-64kUpgrade linux-image-fipsUpgrade linux-image-6.8.0-1063-gcpUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-5.15.0-1104-intel-iot-realtimeUpgrade linux-image-azure-6.8Upgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-nvidia-64k-6.8Upgrade linux-image-oracle-lts-24.04Upgrade linux-image-oracle-6.17Upgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-xilinx-zynqmp-5.15Upgrade linux-image-nvidia-64k-hwe-24.04Upgrade linux-image-azure-lts-22.04Upgrade linux-image-ibmUpgrade linux-image-intel-iotgUpgrade linux-image-kvm-5.15Upgrade linux-image-lowlatency-64kUpgrade linux-image-nvidia-tegra-5.15Upgrade linux-image-nvidia-tegra-6.8Upgrade linux-image-fips-5.15Upgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-aws-64kUpgrade linux-image-genericUpgrade linux-image-6.17.0-1018-azure-fdeUpgrade linux-image-6.8.0-1058-nvidiaUpgrade linux-image-ibm-classicUpgrade linux-image-generic-lpaeUpgrade linux-image-6.8.0-134-fipsUpgrade linux-image-gcp-5.15Upgrade linux-image-6.8.0-1032-xilinxUpgrade linux-image-5.15.0-186-generic-lpaeUpgrade linux-image-oem-24.04Upgrade linux-image-xilinxUpgrade linux-image-6.17.0-1018-realtimeUpgrade linux-image-azure-fips-6.8Upgrade linux-image-6.8.0-1062-azure-fipsUpgrade linux-image-nvidia-hwe-24.04Upgrade linux-image-6.8.0-1063-gcp-64kUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-aws-lts-22.04Upgrade linux-image-nvidia-tegra-igx-rtUpgrade linux-image-5.15.0-1104-kvmUpgrade linux-image-nvidia-tegra-igx-5.15Upgrade linux-image-nvidia-tegra-igx-rt-5.15Upgrade linux-image-oem-22.04aUpgrade linux-image-nvidia-tegraUpgrade linux-image-oem-22.04bUpgrade linux-image-gkeop-6.8Upgrade linux-image-ibm-6.8Upgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-5.15.0-1112-gcpUpgrade linux-image-raspi-nolpaeUpgrade linux-image-6.8.0-134-lowlatencyUpgrade linux-image-azure-fde-6.17Upgrade linux-image-5.15.0-1111-realtimeUpgrade linux-image-gcp-6.8Upgrade linux-image-gcpUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-6.8.0-1060-awsUpgrade linux-image-6.8.0-134-generic-64kUpgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-oem-20.04bUpgrade linux-image-generic-64k-6.8Upgrade linux-image-nvidia-tegra-rtUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-lowlatency-64k-5.15Upgrade linux-image-nvidiaUpgrade linux-image-azure-fipsUpgrade linux-image-realtime-hwe-22.04Upgrade linux-image-oem-22.04Upgrade linux-image-azure-lts-24.04Upgrade linux-image-5.15.0-1117-azureUpgrade linux-image-aws-64k-lts-22.04Upgrade linux-image-5.15.0-1112-aws-fipsUpgrade linux-image-aws-64k-5.15Upgrade linux-image-6.17.0-1021-gcpUpgrade linux-image-6.8.0-1063-azureUpgrade linux-image-aws-fips-6.8Upgrade linux-image-aws-6.8Upgrade linux-image-nvidia-tegra-igxUpgrade linux-image-gke-6.8Upgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-6.8.0-1057-oracleUpgrade linux-image-5.15.0-1112-gcp-fipsUpgrade linux-image-6.17.0-1030-oemUpgrade linux-image-5.15.0-1107-nvidiaUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-5.15.0-1095-gkeopUpgrade linux-image-6.17.0-1019-oracleUpgrade linux-image-oem-22.04cUpgrade linux-image-nvidia-lowlatency-5.15Upgrade linux-image-nvidia-tegra-rt-6.8Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-kvmUpgrade linux-image-azureUpgrade linux-image-aws-fipsUpgrade linux-image-6.8.0-136-generic-64kUpgrade linux-image-6.8.0-134-lowlatency-64kUpgrade linux-image-6.8.0-1060-ibmUpgrade linux-image-5.15.0-186-fipsUpgrade linux-image-5.15.0-184-lowlatencyUpgrade linux-image-5.15.0-1109-oracleUpgrade linux-image-virtual-5.15Upgrade linux-image-raspi-5.15Upgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-nvidia-5.15Upgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-gcp-fips-5.15Upgrade linux-image-gcp-6.17Upgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-azure-fdeUpgrade linux-image-aws-fips-5.15Upgrade linux-image-awsUpgrade linux-image-6.8.0-1062-azure-fdeUpgrade linux-image-5.15.0-1108-gkeUpgrade linux-image-generic-64k-5.15Upgrade linux-image-oem-24.04cUpgrade linux-image-realtime-5.15Upgrade linux-image-xilinx-6.8Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-nvidia-tegra-rt-5.15Upgrade linux-image-ibm-5.15Upgrade linux-image-gkeUpgrade linux-image-5.15.0-1107-nvidia-lowlatencyUpgrade linux-image-5.15.0-1106-ibmUpgrade linux-image-gke-64kUpgrade linux-image-5.15.0-1112-aws-64kUpgrade linux-image-aws-lts-24.04Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-oem-22.04dUpgrade linux-image-oracle-64k-6.17Upgrade linux-image-lowlatency-6.8Upgrade linux-image-generic-lpae-5.15Upgrade linux-image-6.8.0-1057-oracle-64kUpgrade linux-image-5.15.0-1053-nvidia-tegra-igxUpgrade linux-image-virtual-6.8Upgrade linux-image-realtime-hwe-24.04Upgrade linux-image-oem-20.04Upgrade linux-image-gke-64k-6.8Upgrade linux-image-5.15.0-186-generic-64kUpgrade linux-image-gcp-64kUpgrade linux-image-5.15.0-186-genericUpgrade linux-image-nvidia-6.17Upgrade linux-image-gcp-fips-6.8Upgrade linux-image-oracle-64kUpgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-oracle-5.15Upgrade linux-image-gcp-fipsUpgrade linux-image-azure-5.15Upgrade linux-image-azure-fde-5.15Upgrade linux-image-6.8.0-136-genericUpgrade linux-image-6.8.0-134-genericUpgrade linux-image-6.8.0-1058-gkeUpgrade linux-image-6.8.0-1045-gkeopUpgrade linux-image-6.8.0-1029-nvidia-tegraUpgrade linux-image-6.17.0-1021-gcp-64kUpgrade linux-image-5.15.0-1064-nvidia-tegra-rtUpgrade linux-image-5.15.0-1064-nvidia-tegraUpgrade linux-image-realtime-6.8.1Upgrade linux-image-realtime-6.17Upgrade linux-image-oracle-6.8Upgrade linux-image-nvidia-64k-6.17Upgrade linux-image-intel-iot-realtimeUpgrade linux-image-intelUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-azure-fde-6.8Upgrade linux-image-5.15.0-1053-nvidia-tegra-igx-rtUpgrade linux-image-laptop-23.10Upgrade linux-image-gcp-64k-6.8Upgrade linux-image-gcp-64k-6.17Upgrade linux-image-azure-cvmUpgrade linux-image-6.8.0-2049-raspi-realtimeUpgrade linux-image-6.8.0-1029-nvidia-tegra-rtUpgrade linux-image-6.17.0-1031-nvidia-64kUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-realtimeUpgrade linux-image-oem-6.17Upgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-nvidia-lowlatencyUpgrade linux-image-nvidia-6.8Upgrade linux-image-5.15.0-1107-intel-iotgUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-raspi-6.8Upgrade linux-image-azure-fips-5.15Upgrade linux-image-aws-5.15Upgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-generic-64kUpgrade linux-image-6.8.0-1058-gke-64kUpgrade linux-image-6.8.1-1055-realtimeUpgrade linux-image-5.15.0-1075-xilinx-zynqmpUpgrade linux-image-nvidia-64kUpgrade linux-image-lowlatency-5.15Upgrade linux-image-gkeop-5.15Upgrade linux-image-5.15.0-1117-azure-fipsUpgrade linux-image-6.8.0-1058-nvidia-64kUpgrade linux-image-6.8.0-1060-aws-64kUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-raspiUpgrade linux-image-6.8.0-1058-nvidia-lowlatency-64kUpgrade linux-image-oem-20.04c | Jul 2, 2026 | Jul 1, 2026 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | May 27, 2026 | Feb 4, 2026 |
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