[PATCH] iommu/amd: Fix IRTE allocation when DMA translation is off
From: Ankit Soni
Date: Fri Sep 18 2026 - 00:47:40 EST
On an emulated IOMMU, DMA translation can be off while interrupt remapping
stays on. Probe path skips DMA setup as intended, but it also skips IRQ
table size setup. Interrupt remapping then fails with "Failed to allocate
IRTE".
Fall through after the PD_MODE_NONE check so the IRQ table size is still
set.
Fixes: 3222b6de5145 ("iommu/amd: Fix error path in amd_iommu_probe_device()")
Cc: stable@xxxxxxxxxxxxxxx # 6.19+
Suggested-by: Sairaj Kodilkar <sarunkod@xxxxxxx>
Signed-off-by: Ankit Soni <Ankit.Soni@xxxxxxx>
---
drivers/iommu/amd/iommu.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/iommu/amd/iommu.c b/drivers/iommu/amd/iommu.c
index 56262f6b1f70..77ef2749206a 100644
--- a/drivers/iommu/amd/iommu.c
+++ b/drivers/iommu/amd/iommu.c
@@ -2531,7 +2531,6 @@ static struct iommu_device *amd_iommu_probe_device(struct device *dev)
pr_warn_once("%s: DMA translation not supported by iommu.\n",
__func__);
iommu_dev = ERR_PTR(-ENODEV);
- goto out_err;
}
iommu_completion_wait(iommu);
--
2.43.0