drm/i915/gvt: remove the vgpu->released and its sanity check
authorZhi Wang <zhi.a.wang@intel.com>
Fri, 4 Nov 2022 14:56:50 +0000 (14:56 +0000)
committerZhenyu Wang <zhenyuw@linux.intel.com>
Thu, 17 Nov 2022 06:07:09 +0000 (14:07 +0800)
The life cycle of a vGPU, which is represented by a vfio_device, has been
managed by the VFIO core logic. Remove the vgpu->released, which was used
for a sanity check on the removal path of the vGPU instance. The sanity
check has already been covered in the VFIO core logic.

Cc: Zhenyu Wang <zhenyuw@linux.intel.com>
Cc: Kevin Tian <kevin.tian@intel.com>
Cc: Jason Gunthorpe <jgg@nvidia.com>
Cc: intel-gvt-dev@lists.freedesktop.org
Suggested-by: Alex Williamson <alex.williamson@redhat.com>
Signed-off-by: Zhi Wang <zhi.a.wang@intel.com>
Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20221104145652.1570-1-zhi.a.wang@intel.com
Reviewed-by: Zhenyu Wang <zhenyuw@linux.intel.com>
drivers/gpu/drm/i915/gvt/gvt.h
drivers/gpu/drm/i915/gvt/kvmgt.c

index 705689e6401197c6870cb7b9920d15e13ecddb57..0ca3001aa481c24327b0ea961e514ad5ab0c1fcd 100644 (file)
@@ -226,8 +226,6 @@ struct intel_vgpu {
        unsigned long nr_cache_entries;
        struct mutex cache_lock;
 
-       atomic_t released;
-
        struct kvm_page_track_notifier_node track_node;
 #define NR_BKT (1 << 18)
        struct hlist_head ptable[NR_BKT];
index e3cd5894647777b008629184dd41c24cb822ee4d..f48f763c84d1d78adcdf034da9d9d7810f007d7a 100644 (file)
@@ -785,7 +785,6 @@ static int intel_vgpu_open_device(struct vfio_device *vfio_dev)
 
        intel_gvt_activate_vgpu(vgpu);
 
-       atomic_set(&vgpu->released, 0);
        return 0;
 }
 
@@ -807,9 +806,6 @@ static void intel_vgpu_close_device(struct vfio_device *vfio_dev)
        if (!vgpu->attached)
                return;
 
-       if (atomic_cmpxchg(&vgpu->released, 0, 1))
-               return;
-
        intel_gvt_release_vgpu(vgpu);
 
        debugfs_remove(debugfs_lookup(KVMGT_DEBUGFS_FILENAME, vgpu->debugfs));