intel-iommu: Unlink domain from iommu
authorAlex Williamson <alex.williamson@redhat.com>
Fri, 4 Mar 2011 21:52:16 +0000 (14:52 -0700)
committerDavid Woodhouse <David.Woodhouse@intel.com>
Sat, 12 Mar 2011 14:37:26 +0000 (14:37 +0000)
commita97590e56d0d58e1dd262353f7cbd84e81d8e600
tree8e85cd61adfb8b40f0fb4af0d46e652c665da099
parent7a6610139a1e1d9297dd1c5d178022eac36839cb
intel-iommu: Unlink domain from iommu

When we remove a device, we unlink the iommu from the domain, but
we never do the reverse unlinking of the domain from the iommu.
This means that we never clear iommu->domain_ids, eventually leading
to resource exhaustion if we repeatedly bind and unbind a device
to a driver.  Also free empty domains to avoid a resource leak.

Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
Acked-by: Donald Dutile <ddutile@redhat.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Cc: stable@kernel.org
drivers/pci/intel-iommu.c