[PATCH] amd-iommu: detach device explicitly before attaching it to a new domain

Chris Wright chrisw at sous-sol.org
Mon Jun 8 13:47:33 PDT 2009


From: Joerg Roedel <joerg.roedel at amd.com>

This fixes a bug with a device that could not be assigned to a KVM guest
because it is still assigned to a dma_ops protection domain.

[chrisw: simply remove WARN_ON(), will always fire since dev->driver
will be pci-sub]
Signed-off-by: Chris Wright <chrisw at sous-sol.org>

---
 arch/x86/kernel/amd_iommu.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/arch/x86/kernel/amd_iommu.c
+++ b/arch/x86/kernel/amd_iommu.c
@@ -1842,7 +1842,7 @@ static int amd_iommu_attach_device(struc
 
 	old_domain = domain_for_device(devid);
 	if (old_domain)
-		return -EBUSY;
+		detach_device(old_domain, devid);
 
 	attach_device(iommu, domain, devid);
 


More information about the iommu mailing list