ACK: [SRU][Q][PATCH 0/1] Revert "iommu: disable SVA when CONFIG_X86 is set"
Tim Whisonant
tim.whisonant at canonical.com
Wed Apr 22 18:22:01 UTC 2026
On Wed, Apr 22, 2026 at 09:07:52PM +0300, Mehmet Basaran wrote:
> BugLink: https://bugs.launchpad.net/bugs/2149766
>
> [Impact]
>
> The issue has been brought to our attention when questing (6.17)
> kernels were unable to load amd_xdna drivers. However, this commit,
> in addition to NPUs, also affects PCIe cards which make use of
> unified memory (GPUs, Accelerators, NICs). With this commit, PCIe
> devices will revert to using legacy method (pinning) instead of
> unified memory. As a result,
> - arguably it will be less secure,
> - there can be performance drops.
>
> Currently, this commit is part of an 8 commit patch series:
> "Fix stale IOTLB entries for kernel address space", v7.
> [PATCH v7 1/8] iommu: Disable SVA when CONFIG_X86 is set
> [PATCH v7 2/8] mm: Add a ptdesc flag to mark kernel page tables
> [PATCH v7 3/8] mm: Actually mark kernel page table pages
> [PATCH v7 4/8] x86/mm: Use 'ptdesc' when freeing PMD pages
> [PATCH v7 5/8] mm: Introduce pure page table freeing function
> [PATCH v7 6/8] x86/mm: Use pagetable_free()
> [PATCH v7 7/8] mm: Introduce deferred freeing for kernel page tables
> [PATCH v7 8/8] iommu/sva: Invalidate stale IOTLB entries for kernel address space
>
> where "iommu: disable SVA when CONFIG_X86 is set" is undone by
> the 8th commit. We only have this commit from the whole patchset.
> Ideally we should have the whole patchset applied.
>
> [Fix]
>
> This commit fixes the following issue which is old,
> 26b25a2b98e4 ("iommu: Bind process address spaces to devices")
> and we applied this commit recently. So, reverting this commit
> won't be introducing regressions. Affected kernel versions are:
> - 6.8 due to the reasons above.
> - 6.17 due to both the reasons above and the amd_xdna issue.
>
> [Test Plan]
>
> Our regression test suite doesn't catch this issue. However,
> we will run it again to see it doesn't cause anything else.
>
> [Where problems could occur]
>
> Reverted commit is 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.
>
> Mehmet Basaran (1):
> Revert "iommu: disable SVA when CONFIG_X86 is set"
>
> drivers/iommu/iommu-sva.c | 3 ---
> 1 file changed, 3 deletions(-)
>
> --
> 2.43.0
>
Acked-by: Tim Whisonant <tim.whisonant at canonical.com>
More information about the kernel-team
mailing list