CVE-2025-71089: iommu: disable SVA when CONFIG_X86 is set

Published Jan 13, 2026
·
Updated

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

iommu: disable SVA when CONFIGX86 is set

Patch series "Fix stale IOTLB entries for kernel address space", v7.

This proposes a fix for a security vulnerability related to IOMMU Shared Virtual Addressing (SVA). In an SVA context, an IOMMU can cache kernel page table entries. When a kernel page table page is freed and reallocated for another purpose, the IOMMU might still hold stale, incorrect entries. This can be exploited to cause a use-after-free or write-after-free condition, potentially leading to privilege escalation or data corruption.

This solution introduces a deferred freeing mechanism for kernel page table pages, which provides a safe window to notify the IOMMU to invalidate its caches before the page is reused.

This patch (of 8):

In the IOMMU Shared Virtual Addressing (SVA) context, the IOMMU hardware shares and walks the CPU's page tables. The x86 architecture maps the kernel's virtual address space into the upper portion of every process's page table. Consequently, in an SVA context, the IOMMU hardware can walk and cache kernel page table entries.

The Linux kernel currently lacks a notification mechanism for kernel page table changes, specifically when page table pages are freed and reused. The IOMMU driver is only notified of changes to user virtual address mappings. This can cause the IOMMU's internal caches to retain stale entries for kernel VA.

Use-After-Free (UAF) and Write-After-Free (WAF) conditions arise when kernel page table pages are freed and later reallocated. The IOMMU could misinterpret the new data as valid page table entries. The IOMMU might then walk into attacker-controlled memory, leading to arbitrary physical memory DMA access or privilege escalation. This is also a Write-After-Free issue, as the IOMMU will potentially continue to write Accessed and Dirty bits to the freed memory while attempting to walk the stale page tables.

Currently, SVA contexts are unprivileged and cannot access kernel mappings. However, the IOMMU will still walk kernel-only page tables all the way down to the leaf entries, where it realizes the mapping is for the kernel and errors out. This means the IOMMU still caches these intermediate page table entries, making the described vulnerability a real concern.

Disable SVA on x86 architecture until the IOMMU can receive notification to flush the paging cache before freeing the CPU kernel page table pages.

Affected Software

17 affected componentsFixes available
Linux Linux kernel
Microsoft azl3 kernel 6.6.119.3-3
Linux Linux kernel>=5.2<5.15.200
Linux Linux kernel>=5.16<6.1.163
Linux Linux kernel>=6.2<6.6.120
Linux Linux kernel>=6.7<6.12.64
Linux Linux kernel>=6.13<6.18.4
debian/linux<6.1.164-1
6.1.164-1
debian/linux<6.12.69-1
6.12.69-1
debian/linux<6.18.5-1
6.18.5-1
linux/kernel>=5.2.0<5.10.273
5.10.273
linux/kernel>=5.11.0<5.15.200
5.15.200
linux/kernel>=5.16.0<6.1.163
6.1.163
linux/kernel>=6.2.0<6.6.120
6.6.120
linux/kernel>=6.7.0<6.12.64
6.12.64
linux/kernel>=6.13.0<6.18.4
6.18.4
debian/linux
6.1.176-16.1.190-16.12.107-16.12.115-27.2.12-17.2.15-1

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade debian/linux to a version that resolves this vulnerability.

    Fixed in 6.1.164-1
  2. Upgrade

    Upgrade debian/linux to a version that resolves this vulnerability.

    Fixed in 6.12.69-1
  3. Upgrade

    Upgrade debian/linux to a version that resolves this vulnerability.

    Fixed in 6.18.5-1
  4. Upgrade

    Upgrade linux/Kernel to a version that resolves this vulnerability.

    Fixed in 5.10.273
  5. Upgrade

    Upgrade linux/Kernel to a version that resolves this vulnerability.

    Fixed in 5.15.200
  6. Upgrade

    Upgrade linux/Kernel to a version that resolves this vulnerability.

    Fixed in 6.1.163
  7. Upgrade

    Upgrade linux/Kernel to a version that resolves this vulnerability.

    Fixed in 6.6.120
  8. Upgrade

    Upgrade linux/Kernel to a version that resolves this vulnerability.

    Fixed in 6.12.64
  9. Upgrade

    Upgrade linux/Kernel to a version that resolves this vulnerability.

    Fixed in 6.18.4
  10. Upgrade

    Upgrade debian/linux to a version that resolves this vulnerability.

    Fixed in 6.1.176-1Fixed in 6.1.190-1Fixed in 6.12.107-1Fixed in 6.12.113-1Fixed in 7.2.12-1Fixed in 7.2.14-1
  11. Configuration

    Disable SVA on x86 until the IOMMU can receive notification to flush the paging cache before freeing CPU kernel page-table pages.

    Linux kernel on x86 IOMMU Shared Virtual Addressing (SVA) = disabled

Event History

Jan 13, 2026
CVE Published
via MITRE·03:34 PM
Data Sourced
via MITRE·03:34 PM
DescriptionSeverity
Data Sourced
via OSV·03:34 PM
DescriptionSeverityAffected Software
Data Sourced
via Red Hat·04:07 PM
DescriptionSeverityAffected Software
Data Sourced
via NVD·04:16 PM
RemedyDescriptionSeverityWeaknessAffected Software
Jan 15, 2026
Data Sourced
via Microsoft·09:02 AM
DescriptionSeverityWeaknessAffected Software

Parent advisories

This vulnerability appears in the following advisories.

Peer vulnerabilities

Found alongside the following vulnerabilities.

Frequently Asked Questions

1

What is the severity of CVE-2025-71089?

CVE-2025-71089 has been classified as a moderate severity vulnerability affecting the Linux kernel.

2

How do I fix CVE-2025-71089?

To fix CVE-2025-71089, users should apply the latest kernel updates provided by their Linux distribution that include the necessary patches.

3

What systems are impacted by CVE-2025-71089?

CVE-2025-71089 impacts Linux kernel versions when the CONFIG_X86 configuration is enabled.

4

What type of vulnerability is CVE-2025-71089?

CVE-2025-71089 is a security vulnerability related to the IOMMU Shared Virtual Addressing.

5

Is there any workaround for CVE-2025-71089?

Currently, the best approach for mitigating CVE-2025-71089 is to update to the patched kernel version.

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