Call irq_domain_free_fwnode to free 'fn' if dmar_enable_qi returns
failure, same as when irq_domain_create_hierarchy returns failure.

Signed-off-by: Guoqing Jiang <[email protected]>
---
 drivers/iommu/intel/irq_remapping.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/iommu/intel/irq_remapping.c 
b/drivers/iommu/intel/irq_remapping.c
index f912fe45bea2..6e8362c21fc3 100644
--- a/drivers/iommu/intel/irq_remapping.c
+++ b/drivers/iommu/intel/irq_remapping.c
@@ -594,6 +594,7 @@ static int intel_setup_irq_remapping(struct intel_iommu 
*iommu)
                dmar_disable_qi(iommu);
 
                if (dmar_enable_qi(iommu)) {
+                       irq_domain_free_fwnode(fn);
                        pr_err("Failed to enable queued invalidation\n");
                        goto out_free_bitmap;
                }
-- 
2.31.1

_______________________________________________
iommu mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/iommu

Reply via email to