In the Linux kernel, the following vulnerability has been resolved:
iommu/amd/pgtbl: Fix possible race while increase page table level
The AMD IOMMU host page table implementation supports dynamic page table levels (up to 6 levels), starting with a 3-level configuration that expands based on IOVA address. The kernel maintains a root pointer and current page table level to enable proper page table walks in alloc_pte()/fetch_pte() operations.
The IOMMU IOVA allocator initially starts with 32-bit address and onces its exhuasted it switches to 64-bit address (max address is determined based on IOMMU and device DMA capability). To support larger IOVA, AMD IOMMU driver increases page table level.
But in unmap path (iommu_v1_unmap_pages()), fetch_pte() reads pgtable->[root/mode] without lock. So its possible that in exteme corner case, when increase_address_space() is updating pgtable->[root/mode], fetch_pte() reads wrong page table level (pgtable->mode). It does compare the value with level encoded in page table and returns NULL. This will result is iommu_unmap ops to fail and upper layer may retry/log WARN_ON.
CPU 0 CPU 1 ------ ------ map pages unmap pages alloc_pte() -> increase_address_space() iommu_v1_unmap_pages() -> fetch_pte() pgtable->root = pte (new root value) READ pgtable->[mode/root] Reads new root, old mode Updates mode (pgtable->mode += 1)
Since Page table level updates are infrequent and already synchronized with a spinlock, implement seqcount to enable lock-free read operations on the read path.
CVSS Details
- CVSS 3.1 Base Score: 8.8
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon_linux_2023 | — | Upgrade python3-perfUpgrade kernel-develUpgrade kernel-livepatch-6.1.175-219.357Upgrade kernel-tools-develUpgrade perfUpgrade kernel-debuginfo-common-aarch64Upgrade bpftool-debuginfoUpgrade kernel6.12Upgrade kernel6.12-develUpgrade kernel-toolsUpgrade kernel6.12-modules-extraUpgrade perf6.12-debuginfoUpgrade kernel6.12-libbpf-debuginfoUpgrade perf-debuginfoUpgrade bpftool6.12Upgrade bpftool6.12-debuginfoUpgrade kernel-modules-extraUpgrade kernel6.12-debuginfo-common-aarch64Upgrade kernel-modules-extra-commonUpgrade python3-perf6.12-debuginfoUpgrade kernel6.12-libbpf-staticUpgrade kernel-debuginfo-common-x86_64Upgrade kernel6.12-toolsUpgrade kernel6.12-modules-extra-commonUpgrade kernel6.12-debuginfo-common-x86_64Upgrade kernel6.12-tools-develUpgrade perf6.12Upgrade kernel6.12-tools-debuginfoUpgrade kernelUpgrade kernel6.12-headersUpgrade kernel6.12-libbpf-develUpgrade bpftoolUpgrade python3-perf6.12Upgrade python3-perf-debuginfoUpgrade kernel6.12-libbpfUpgrade kernel-tools-debuginfoUpgrade kernel-livepatch-6.12.53-69.119Upgrade kernel-debuginfoUpgrade kernel-headersUpgrade kernel6.12-debuginfo | Oct 28, 2025 | Oct 9, 2025 |
| Debian | — | Upgrade linux | Jul 23, 2026 | Jul 23, 2026 |
| Redhat_linux | — | No solution exists | Jul 17, 2026 | Oct 9, 2025 |
| Ubuntu | — | Upgrade linux-image-xilinx-6.8Upgrade linux-image-6.8.0-1050-aws-fipsUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-6.8.0-106-fipsUpgrade linux-image-oem-22.04bUpgrade linux-image-6.8.0-106-generic-64kUpgrade linux-image-gcp-64k-6.8Upgrade linux-image-6.8.0-1047-oracleUpgrade linux-image-gkeUpgrade linux-image-6.8.0-1050-raspiUpgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-gcp-6.8Upgrade linux-image-oem-22.04dUpgrade linux-image-aws-lts-24.04Upgrade linux-image-gke-64k-6.8Upgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-realtimeUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-aws-64kUpgrade linux-image-nvidia-6.8Upgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-6.8.0-1052-gcp-fipsUpgrade linux-image-azure-6.8Upgrade linux-image-6.8.0-1049-nvidia-lowlatency-64kUpgrade linux-image-oracleUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-oracle-6.8Upgrade linux-image-xilinx-zynqmpUpgrade linux-image-awsUpgrade linux-image-6.8.0-1047-oracle-64kUpgrade linux-image-gcpUpgrade linux-image-gcp-lts-24.04Upgrade linux-image-aws-fips-6.8Upgrade linux-image-lowlatency-6.8Upgrade linux-image-nvidia-64k-6.8Upgrade linux-image-virtualUpgrade linux-image-kvmUpgrade linux-image-6.8.0-1049-nvidia-64kUpgrade linux-image-6.8.0-106-lowlatencyUpgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-6.8.0-1052-gcpUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-6.8.0-1029-xilinxUpgrade linux-image-gkeopUpgrade linux-image-gcp-fipsUpgrade linux-image-azure-fipsUpgrade linux-image-oem-22.04Upgrade linux-image-raspi-realtimeUpgrade linux-image-oem-22.04aUpgrade linux-image-azureUpgrade linux-image-realtime-hwe-22.04Upgrade linux-image-intel-iotgUpgrade linux-image-generic-64kUpgrade linux-image-gke-6.8Upgrade linux-image-azure-fips-6.8Upgrade linux-image-6.8.0-1051-azureUpgrade linux-image-gcp-64kUpgrade linux-image-virtual-6.8Upgrade linux-image-6.8.0-1052-azure-fipsUpgrade linux-image-genericUpgrade linux-image-6.8.0-106-genericUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-gke-64kUpgrade linux-image-6.8.0-1052-gcp-64kUpgrade linux-image-oracle-lts-24.04Upgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-ibmUpgrade linux-image-fipsUpgrade linux-image-generic-64k-6.8Upgrade linux-image-6.8.0-1050-aws-64kUpgrade linux-image-aws-64k-6.8Upgrade linux-image-lowlatency-64kUpgrade linux-image-6.8.0-1048-gke-64kUpgrade linux-image-oracle-64k-6.8Upgrade linux-image-oracle-64kUpgrade linux-image-nvidiaUpgrade linux-image-oem-22.04cUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-6.8.0-106-lowlatency-64kUpgrade linux-image-6.8.0-2040-raspi-realtimeUpgrade linux-image-aws-fipsUpgrade linux-image-generic-6.8Upgrade linux-image-6.8.0-1049-ibmUpgrade linux-image-realtime-6.8.1Upgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-gcp-fips-6.8Upgrade linux-image-6.8.0-1048-gkeUpgrade linux-image-xilinxUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-ibm-6.8Upgrade linux-image-raspiUpgrade linux-image-lowlatencyUpgrade linux-image-6.8.0-1049-nvidia-lowlatencyUpgrade linux-image-intel-iot-realtimeUpgrade linux-image-raspi-realtime-6.8Upgrade linux-image-6.8.0-1049-nvidiaUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-6.8.0-1035-gkeopUpgrade linux-image-gkeop-6.8Upgrade linux-image-generic-lpaeUpgrade linux-image-fips-6.8Upgrade linux-image-nvidia-64kUpgrade linux-image-ibm-classicUpgrade linux-image-azure-lts-24.04Upgrade linux-image-aws-6.8Upgrade linux-image-6.8.1-1045-realtimeUpgrade linux-image-6.8.0-1050-awsUpgrade linux-image-raspi-6.8 | Mar 17, 2026 | Oct 9, 2025 |
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