vfio: If an IOMMU backend fails, keep looking
authorAlex Williamson <alex.williamson@redhat.com>
Mon, 22 Feb 2016 23:02:30 +0000 (16:02 -0700)
committerAlex Williamson <alex.williamson@redhat.com>
Mon, 22 Feb 2016 23:10:08 +0000 (16:10 -0700)
commit7c435b46c29a0240616cd1ad15d23341f9a341f4
tree11d934d01e8efa1deb8c9bf29e7f84d3362ba98a
parentb95d9305e8cb8d432ca02da1b759fef59bc50ace
vfio: If an IOMMU backend fails, keep looking

Consider an IOMMU to be an API rather than an implementation, we might
have multiple implementations supporting the same API, so try another
if one fails.  The expectation here is that we'll really only have
one implementation per device type.  For instance the existing type1
driver works with any PCI device where the IOMMU API is available.  A
vGPU vendor may have a virtual PCI device which provides DMA isolation
and mapping through other mechanisms, but can re-use userspaces that
make use of the type1 VFIO IOMMU API.  This allows that to work.

Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
drivers/vfio/vfio.c