RE: [PATCH 1/1] iommu/vt-d: Avoid WARNING in sva unbind path

From: Tian, Kevin

Date: Wed May 20 2026 - 00:01:27 EST


> From: Lu Baolu <baolu.lu@xxxxxxxxxxxxxxx>
> Sent: Tuesday, May 19, 2026 1:29 PM
>
> The Intel IOMMU driver allows SVA on devices even if they do not support
> PCI/PRI. Commit 39c20c4e83b9 ("iommu/vt-d: Only handle IOPF for SVA
> when
> PRI is supported") modified the SVA bind path to allow this configuration
> by skipping IOPF enablement when PRI is missing. However, it failed to
> update the unbind path.
>
> This creates an imbalance: the unbind path attempts to disable IOPF for
> a device that never had it enabled, triggering a WARNING in
> intel_iommu_disable_iopf():
>
> WARNING: drivers/iommu/intel/iommu.c:3475 at
> intel_iommu_disable_iopf+0x4f/0x90d
> Call Trace:
> <TASK>
> blocking_domain_set_dev_pasid+0x50/0x70
> iommu_detach_device_pasid+0x89/0xc0
> iommu_sva_unbind_device+0x73/0x150
> xe_vm_close_and_put+0x4d2/0x1200 [xe]
>
> Fix this by bypassing IOPF operations for SVA domains on non-PRI hardware
> in both the bind and unbind paths.
>
> Fixes: 39c20c4e83b9 ("iommu/vt-d: Only handle IOPF for SVA when PRI is
> supported")
> Cc: stable@xxxxxxxxxxxxxxx
> Reported-by: Nareshkumar Gollakoti <naresh.kumar.g@xxxxxxxxx>
> Signed-off-by: Lu Baolu <baolu.lu@xxxxxxxxxxxxxxx>

Reviewed-by: Kevin Tian <kevin.tian@xxxxxxxxx>