On Fri, 2 Jun 2023 05:16:51 -0700 Yi Liu <yi.l.liu@xxxxxxxxx> wrote: > This converts noiommu test to use vfio_device->noiommu flag. Per this > change, vfio_device_is_noiommu() is removed. > > Signed-off-by: Yi Liu <yi.l.liu@xxxxxxxxx> > --- > drivers/vfio/group.c | 2 +- > drivers/vfio/iommufd.c | 4 ++-- > drivers/vfio/vfio.h | 9 ++------- > 3 files changed, 5 insertions(+), 10 deletions(-) Drop this as well. You can see here all the code paths that wouldn't have even been compiled with CONFIG_VFIO_NOIOMMU unset. Thanks, Alex > diff --git a/drivers/vfio/group.c b/drivers/vfio/group.c > index 64cdd0ea8825..08d37811507e 100644 > --- a/drivers/vfio/group.c > +++ b/drivers/vfio/group.c > @@ -191,7 +191,7 @@ static int vfio_df_group_open(struct vfio_device_file *df) > vfio_device_group_get_kvm_safe(device); > > df->iommufd = device->group->iommufd; > - if (df->iommufd && vfio_device_is_noiommu(device) && device->open_count == 0) { > + if (df->iommufd && device->noiommu && device->open_count == 0) { > /* > * Require no compat ioas to be assigned to proceed. The basic > * statement is that the user cannot have done something that > diff --git a/drivers/vfio/iommufd.c b/drivers/vfio/iommufd.c > index a59ed4f881aa..fac8ca74ec85 100644 > --- a/drivers/vfio/iommufd.c > +++ b/drivers/vfio/iommufd.c > @@ -37,7 +37,7 @@ int vfio_iommufd_compat_attach_ioas(struct vfio_device *vdev, > lockdep_assert_held(&vdev->dev_set->lock); > > /* compat noiommu does not need to do ioas attach */ > - if (vfio_device_is_noiommu(vdev)) > + if (vdev->noiommu) > return 0; > > ret = iommufd_vfio_compat_ioas_get_id(ictx, &ioas_id); > @@ -54,7 +54,7 @@ void vfio_df_iommufd_unbind(struct vfio_device_file *df) > > lockdep_assert_held(&vdev->dev_set->lock); > > - if (vfio_device_is_noiommu(vdev)) > + if (vdev->noiommu) > return; > > if (vdev->ops->unbind_iommufd) > diff --git a/drivers/vfio/vfio.h b/drivers/vfio/vfio.h > index 1b89e8bc8571..b138b8334fe0 100644 > --- a/drivers/vfio/vfio.h > +++ b/drivers/vfio/vfio.h > @@ -106,11 +106,6 @@ bool vfio_device_has_container(struct vfio_device *device); > int __init vfio_group_init(void); > void vfio_group_cleanup(void); > > -static inline bool vfio_device_is_noiommu(struct vfio_device *vdev) > -{ > - return vdev->group->type == VFIO_NO_IOMMU; > -} > - > #if IS_ENABLED(CONFIG_VFIO_CONTAINER) > /** > * struct vfio_iommu_driver_ops - VFIO IOMMU driver callbacks > @@ -271,7 +266,7 @@ void vfio_init_device_cdev(struct vfio_device *device); > static inline int vfio_device_add(struct vfio_device *device) > { > /* cdev does not support noiommu device */ > - if (vfio_device_is_noiommu(device)) > + if (device->noiommu) > return device_add(&device->device); > vfio_init_device_cdev(device); > return cdev_device_add(&device->cdev, &device->device); > @@ -279,7 +274,7 @@ static inline int vfio_device_add(struct vfio_device *device) > > static inline void vfio_device_del(struct vfio_device *device) > { > - if (vfio_device_is_noiommu(device)) > + if (device->noiommu) > device_del(&device->device); > else > cdev_device_del(&device->cdev, &device->device);