vfio: Rename vfio_device_assign/unassign_container()
authorJason Gunthorpe <jgg@nvidia.com>
Tue, 29 Nov 2022 20:31:48 +0000 (16:31 -0400)
committerJason Gunthorpe <jgg@nvidia.com>
Fri, 2 Dec 2022 15:52:03 +0000 (11:52 -0400)
These functions don't really assign anything anymore, they just increment
some refcounts and do a sanity check. Call them
vfio_group_[un]use_container()

Link: https://lore.kernel.org/r/3-v4-42cd2eb0e3eb+335a-vfio_iommufd_jgg@nvidia.com
Reviewed-by: Kevin Tian <kevin.tian@intel.com>
Reviewed-by: Yi Liu <yi.l.liu@intel.com>
Reviewed-by: Alex Williamson <alex.williamson@redhat.com>
Tested-by: Alex Williamson <alex.williamson@redhat.com>
Tested-by: Nicolin Chen <nicolinc@nvidia.com>
Tested-by: Yi Liu <yi.l.liu@intel.com>
Tested-by: Lixiao Yang <lixiao.yang@intel.com>
Tested-by: Matthew Rosato <mjrosato@linux.ibm.com>
Tested-by: Yu He <yu.he@intel.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
drivers/vfio/container.c
drivers/vfio/vfio.h
drivers/vfio/vfio_main.c

index dd79a66..4997779 100644 (file)
@@ -511,10 +511,8 @@ void vfio_group_detach_container(struct vfio_group *group)
        vfio_container_put(container);
 }
 
-int vfio_device_assign_container(struct vfio_device *device)
+int vfio_group_use_container(struct vfio_group *group)
 {
-       struct vfio_group *group = device->group;
-
        lockdep_assert_held(&group->group_lock);
 
        if (!group->container || !group->container->iommu_driver ||
@@ -529,13 +527,13 @@ int vfio_device_assign_container(struct vfio_device *device)
        return 0;
 }
 
-void vfio_device_unassign_container(struct vfio_device *device)
+void vfio_group_unuse_container(struct vfio_group *group)
 {
-       lockdep_assert_held_write(&device->group->group_lock);
+       lockdep_assert_held(&group->group_lock);
 
-       WARN_ON(device->group->container_users <= 1);
-       device->group->container_users--;
-       fput(device->group->opened_file);
+       WARN_ON(group->container_users <= 1);
+       group->container_users--;
+       fput(group->opened_file);
 }
 
 /*
index bcad54b..f95f492 100644 (file)
@@ -112,8 +112,8 @@ void vfio_unregister_iommu_driver(const struct vfio_iommu_driver_ops *ops);
 bool vfio_assert_device_open(struct vfio_device *device);
 
 struct vfio_container *vfio_container_from_file(struct file *filep);
-int vfio_device_assign_container(struct vfio_device *device);
-void vfio_device_unassign_container(struct vfio_device *device);
+int vfio_group_use_container(struct vfio_group *group);
+void vfio_group_unuse_container(struct vfio_group *group);
 int vfio_container_attach_group(struct vfio_container *container,
                                struct vfio_group *group);
 void vfio_group_detach_container(struct vfio_group *group);
index 717c7f4..8c2dcb4 100644 (file)
@@ -749,7 +749,7 @@ static int vfio_device_first_open(struct vfio_device *device)
         * during close_device.
         */
        mutex_lock(&device->group->group_lock);
-       ret = vfio_device_assign_container(device);
+       ret = vfio_group_use_container(device->group);
        if (ret)
                goto err_module_put;
 
@@ -765,7 +765,7 @@ static int vfio_device_first_open(struct vfio_device *device)
 
 err_container:
        device->kvm = NULL;
-       vfio_device_unassign_container(device);
+       vfio_group_unuse_container(device->group);
 err_module_put:
        mutex_unlock(&device->group->group_lock);
        module_put(device->dev->driver->owner);
@@ -781,7 +781,7 @@ static void vfio_device_last_close(struct vfio_device *device)
        if (device->ops->close_device)
                device->ops->close_device(device);
        device->kvm = NULL;
-       vfio_device_unassign_container(device);
+       vfio_group_unuse_container(device->group);
        mutex_unlock(&device->group->group_lock);
        module_put(device->dev->driver->owner);
 }