summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorJoerg Roedel <jroedel@suse.de>2014-09-30 15:02:03 +0400
committerJoerg Roedel <jroedel@suse.de>2014-10-02 13:18:58 +0400
commit1196c2fb0407683c2df92d3d09f9144d42830894 (patch)
tree71b7a7eb4fa1e714f39d8a6ebb03cc5404242d51 /drivers
parent599bad38cf7163123af7c9efea0fcf228bc74fe1 (diff)
downloadlinux-1196c2fb0407683c2df92d3d09f9144d42830894.tar.xz
iommu/vt-d: Only remove domain when device is removed
This makes sure any RMRR mappings stay in place when the driver is unbound from the device. Signed-off-by: Joerg Roedel <jroedel@suse.de> Tested-by: Jerry Hoemann <jerry.hoemann@hp.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/iommu/intel-iommu.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
index d1f5caad04f9..eaf825ac7d28 100644
--- a/drivers/iommu/intel-iommu.c
+++ b/drivers/iommu/intel-iommu.c
@@ -3865,8 +3865,7 @@ static int device_notifier(struct notifier_block *nb,
if (iommu_dummy(dev))
return 0;
- if (action != BUS_NOTIFY_UNBOUND_DRIVER &&
- action != BUS_NOTIFY_DEL_DEVICE)
+ if (action != BUS_NOTIFY_REMOVED_DEVICE)
return 0;
domain = find_domain(dev);