diff --git a/drivers/pci/intr_remapping.c b/drivers/pci/intr_remapping.c index ef25caade54b743b9559fe6c11075d26841b16d9..472be1c3fff006ca3f6c1f4ae2d21c102732a0e6 100644 --- a/drivers/pci/intr_remapping.c +++ b/drivers/pci/intr_remapping.c @@ -523,6 +523,13 @@ int __init enable_intr_remapping(int eim) for_each_drhd_unit(drhd) { struct intel_iommu *iommu = drhd->iommu; + /* + * If the queued invalidation is already initialized, + * shouldn't disable it. + */ + if (iommu->qi) + continue; + /* * Clear previous faults. */