aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLu Baolu <[email protected]>2019-08-01 11:14:58 +0800
committerJoerg Roedel <[email protected]>2019-08-06 17:27:10 +0200
commit458b7c8e0dde12d140e3472b80919cbb9ae793f4 (patch)
tree8b8589c883fa46ffa98fb006e6459d81b496d806
parent11f4fe9ba3c85a4efac7ec25e75056a9b612d9da (diff)
iommu/vt-d: Detach domain when move device out of group
When removing a device from an iommu group, the domain should be detached from the device. Otherwise, the stale domain info will still be cached by the driver and the driver will refuse to attach any domain to the device again. Cc: Ashok Raj <[email protected]> Cc: Jacob Pan <[email protected]> Cc: Kevin Tian <[email protected]> Fixes: b7297783c2bb6 ("iommu/vt-d: Remove duplicated code for device hotplug") Reported-and-tested-by: Vlad Buslov <[email protected]> Suggested-by: Robin Murphy <[email protected]> Link: https://lkml.org/lkml/2019/7/26/1133 Signed-off-by: Lu Baolu <[email protected]> Signed-off-by: Joerg Roedel <[email protected]>
-rw-r--r--drivers/iommu/intel-iommu.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
index bdaed2da8a55..3e22fa6ae8c8 100644
--- a/drivers/iommu/intel-iommu.c
+++ b/drivers/iommu/intel-iommu.c
@@ -5316,6 +5316,8 @@ static void intel_iommu_remove_device(struct device *dev)
if (!iommu)
return;
+ dmar_remove_one_dev_info(dev);
+
iommu_group_remove_device(dev);
iommu_device_unlink(&iommu->iommu, dev);