diff options
Diffstat (limited to 'drivers/iommu/intel/nested.c')
| -rw-r--r-- | drivers/iommu/intel/nested.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/drivers/iommu/intel/nested.c b/drivers/iommu/intel/nested.c index e91b07475fb8..a909ab1a665a 100644 --- a/drivers/iommu/intel/nested.c +++ b/drivers/iommu/intel/nested.c @@ -141,11 +141,10 @@ static int domain_setup_nested(struct intel_iommu *iommu, struct device *dev, ioasid_t pasid, struct iommu_domain *old) { - if (!old) - return intel_pasid_setup_nested(iommu, dev, pasid, domain); - return intel_pasid_replace_nested(iommu, dev, pasid, - iommu_domain_did(old, iommu), - domain); + if (old) + intel_pasid_tear_down_entry(iommu, dev, pasid, false); + + return intel_pasid_setup_nested(iommu, dev, pasid, domain); } static int intel_nested_set_dev_pasid(struct iommu_domain *domain, |
