diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c index c3b79aaf12b7974c226a0d4eba51eb6805404256..761185ac12c5e229c3097e9418a04b81296cb1f0 100644 --- a/drivers/iommu/intel-iommu.c +++ b/drivers/iommu/intel-iommu.c @@ -5284,7 +5284,8 @@ static void intel_iommu_get_resv_regions(struct device *device, struct iommu_resv_region *resv; size_t length; - if (i_dev != device) + if (i_dev != device && + !is_downstream_to_pci_bridge(device, i_dev)) continue; length = rmrr->end_address - rmrr->base_address + 1;