|
@@ -4428,6 +4428,10 @@ static int intel_iommu_attach_device(struct iommu_domain *domain,
|
|
domain_remove_one_dev_info(old_domain, dev);
|
|
domain_remove_one_dev_info(old_domain, dev);
|
|
else
|
|
else
|
|
domain_remove_dev_info(old_domain);
|
|
domain_remove_dev_info(old_domain);
|
|
|
|
+
|
|
|
|
+ if (!domain_type_is_vm_or_si(old_domain) &&
|
|
|
|
+ list_empty(&old_domain->devices))
|
|
|
|
+ domain_exit(old_domain);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|