vfio: Stop using iommu_present()
authorRobin Murphy <robin.murphy@arm.com>
Wed, 11 May 2022 19:12:58 +0000 (13:12 -0600)
committerAlex Williamson <alex.williamson@redhat.com>
Wed, 11 May 2022 19:12:58 +0000 (13:12 -0600)
IOMMU groups have been mandatory for some time now, so a device without
one is necessarily a device without any usable IOMMU, therefore the
iommu_present() check is redundant (or at best unhelpful).

Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Link: https://lore.kernel.org/r/537103bbd7246574f37f2c88704d7824a3a889f2.1649160714.git.robin.murphy@arm.com
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
drivers/vfio/vfio.c

index a455501..7b0a7b8 100644 (file)
@@ -745,11 +745,11 @@ static struct vfio_group *vfio_group_find_or_alloc(struct device *dev)
 
        iommu_group = iommu_group_get(dev);
 #ifdef CONFIG_VFIO_NOIOMMU
-       if (!iommu_group && noiommu && !iommu_present(dev->bus)) {
+       if (!iommu_group && noiommu) {
                /*
                 * With noiommu enabled, create an IOMMU group for devices that
-                * don't already have one and don't have an iommu_ops on their
-                * bus.  Taint the kernel because we're about to give a DMA
+                * don't already have one, implying no IOMMU hardware/driver
+                * exists.  Taint the kernel because we're about to give a DMA
                 * capable device to a user without IOMMU protection.
                 */
                group = vfio_noiommu_group_alloc(dev, VFIO_NO_IOMMU);