This is a note to let you know that I've just added the patch titled
iommu/vt-d: Defer domain removal if device is assigned to a driver
to the 3.16-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
iommu-vt-d-defer-domain-removal-if-device-is-assigned-to-a-driver.patch
and it can be found in the queue-3.16 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree,
please let <[email protected]> know about it.
>From e7f9fa5498d91fcdc63d93007ba43f36b1a30538 Mon Sep 17 00:00:00 2001
From: Joerg Roedel <[email protected]>
Date: Tue, 5 Aug 2014 12:55:45 +0200
Subject: iommu/vt-d: Defer domain removal if device is assigned to a driver
From: Joerg Roedel <[email protected]>
commit e7f9fa5498d91fcdc63d93007ba43f36b1a30538 upstream.
When the BUS_NOTIFY_DEL_DEVICE event is received the device
might still be attached to a driver. In this case the domain
can't be released as the mappings might still be in use.
Defer the domain removal in this case until we receivce the
BUS_NOTIFY_UNBOUND_DRIVER event.
Cc: Jiang Liu <[email protected]>
Cc: David Woodhouse <[email protected]>
Signed-off-by: Joerg Roedel <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
---
drivers/iommu/intel-iommu.c | 8 ++++++++
1 file changed, 8 insertions(+)
--- a/drivers/iommu/intel-iommu.c
+++ b/drivers/iommu/intel-iommu.c
@@ -3891,6 +3891,14 @@ static int device_notifier(struct notifi
action != BUS_NOTIFY_DEL_DEVICE)
return 0;
+ /*
+ * If the device is still attached to a device driver we can't
+ * tear down the domain yet as DMA mappings may still be in use.
+ * Wait for the BUS_NOTIFY_UNBOUND_DRIVER event to do that.
+ */
+ if (action == BUS_NOTIFY_DEL_DEVICE && dev->driver != NULL)
+ return 0;
+
domain = find_domain(dev);
if (!domain)
return 0;
Patches currently in stable-queue which might be from [email protected] are
queue-3.16/iommu-amd-fix-cleanup_domain-for-mass-device-removal.patch
queue-3.16/iommu-vt-d-exclude-devices-using-rmrrs-from-iommu-api-domains.patch
queue-3.16/iommu-vt-d-defer-domain-removal-if-device-is-assigned-to-a-driver.patch
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html