vfio: remove unused method from vfio_iommu_driver_ops
authorChristoph Hellwig <hch@lst.de>
Fri, 24 Sep 2021 15:56:58 +0000 (17:56 +0200)
committerAlex Williamson <alex.williamson@redhat.com>
Thu, 30 Sep 2021 18:46:44 +0000 (12:46 -0600)
The read, write and mmap methods are never implemented, so remove them.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Reviewed-by: Kevin Tian <kevin.tian@intel.com>
Link: https://lore.kernel.org/r/20210924155705.4258-9-hch@lst.de
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
drivers/vfio/vfio.c
include/linux/vfio.h

index 2508c8c3984091bcba51451c9a7f5d944d80fbc8..2c1c7316aa192ca532522edb0cb315844689829c 100644 (file)
@@ -1276,62 +1276,12 @@ static int vfio_fops_release(struct inode *inode, struct file *filep)
        return 0;
 }
 
-/*
- * Once an iommu driver is set, we optionally pass read/write/mmap
- * on to the driver, allowing management interfaces beyond ioctl.
- */
-static ssize_t vfio_fops_read(struct file *filep, char __user *buf,
-                             size_t count, loff_t *ppos)
-{
-       struct vfio_container *container = filep->private_data;
-       struct vfio_iommu_driver *driver;
-       ssize_t ret = -EINVAL;
-
-       driver = container->iommu_driver;
-       if (likely(driver && driver->ops->read))
-               ret = driver->ops->read(container->iommu_data,
-                                       buf, count, ppos);
-
-       return ret;
-}
-
-static ssize_t vfio_fops_write(struct file *filep, const char __user *buf,
-                              size_t count, loff_t *ppos)
-{
-       struct vfio_container *container = filep->private_data;
-       struct vfio_iommu_driver *driver;
-       ssize_t ret = -EINVAL;
-
-       driver = container->iommu_driver;
-       if (likely(driver && driver->ops->write))
-               ret = driver->ops->write(container->iommu_data,
-                                        buf, count, ppos);
-
-       return ret;
-}
-
-static int vfio_fops_mmap(struct file *filep, struct vm_area_struct *vma)
-{
-       struct vfio_container *container = filep->private_data;
-       struct vfio_iommu_driver *driver;
-       int ret = -EINVAL;
-
-       driver = container->iommu_driver;
-       if (likely(driver && driver->ops->mmap))
-               ret = driver->ops->mmap(container->iommu_data, vma);
-
-       return ret;
-}
-
 static const struct file_operations vfio_fops = {
        .owner          = THIS_MODULE,
        .open           = vfio_fops_open,
        .release        = vfio_fops_release,
-       .read           = vfio_fops_read,
-       .write          = vfio_fops_write,
        .unlocked_ioctl = vfio_fops_unl_ioctl,
        .compat_ioctl   = compat_ptr_ioctl,
-       .mmap           = vfio_fops_mmap,
 };
 
 /**
index bbe2930086264964d692e713ddfd32dc7d5c4478..7a57a0077f96375642f0a2d210b68e71a3e528c2 100644 (file)
@@ -95,13 +95,8 @@ struct vfio_iommu_driver_ops {
        struct module   *owner;
        void            *(*open)(unsigned long arg);
        void            (*release)(void *iommu_data);
-       ssize_t         (*read)(void *iommu_data, char __user *buf,
-                               size_t count, loff_t *ppos);
-       ssize_t         (*write)(void *iommu_data, const char __user *buf,
-                                size_t count, loff_t *size);
        long            (*ioctl)(void *iommu_data, unsigned int cmd,
                                 unsigned long arg);
-       int             (*mmap)(void *iommu_data, struct vm_area_struct *vma);
        int             (*attach_group)(void *iommu_data,
                                        struct iommu_group *group);
        void            (*detach_group)(void *iommu_data,