On 4/12/22 11:53, Jason Gunthorpe wrote:
All callers have a struct vfio_device trivially available, pass it in
directly and avoid calling the expensive vfio_group_get_from_dev().

To support the unconverted kvmgt mdev driver add
mdev_legacy_get_vfio_device() which will return the vfio_device pointer
vfio_mdev.c puts in the drv_data.

Signed-off-by: Jason Gunthorpe <j...@nvidia.com>
...
diff --git a/drivers/s390/crypto/vfio_ap_ops.c 
b/drivers/s390/crypto/vfio_ap_ops.c
index 6e08d04b605d6e..69768061cd7bd9 100644
--- a/drivers/s390/crypto/vfio_ap_ops.c
+++ b/drivers/s390/crypto/vfio_ap_ops.c
@@ -1406,21 +1406,21 @@ static int vfio_ap_mdev_open_device(struct vfio_device 
*vdev)
        matrix_mdev->group_notifier.notifier_call = vfio_ap_mdev_group_notifier;
        events = VFIO_GROUP_NOTIFY_SET_KVM;
- ret = vfio_register_notifier(vdev->dev, VFIO_GROUP_NOTIFY,
-                                    &events, &matrix_mdev->group_notifier);
+       ret = vfio_register_notifier(vdev, VFIO_GROUP_NOTIFY, &events,
+                                    &matrix_mdev->group_notifier);
        if (ret)
                return ret;
matrix_mdev->iommu_notifier.notifier_call = vfio_ap_mdev_iommu_notifier;
        events = VFIO_IOMMU_NOTIFY_DMA_UNMAP;
-       ret = vfio_register_notifier(vdev->dev, VFIO_IOMMU_NOTIFY,
-                                    &events, &matrix_mdev->iommu_notifier);
+       ret = vfio_register_notifier(vdev, VFIO_IOMMU_NOTIFY, &events,
+                                    &matrix_mdev->iommu_notifier);
        if (ret)
                goto out_unregister_group;
        return 0;
out_unregister_group:
-       vfio_unregister_notifier(vdev->dev, VFIO_GROUP_NOTIFY,
+       vfio_unregister_notifier(vdev, VFIO_GROUP_NOTIFY,
                                 &matrix_mdev->group_notifier);
        return ret;
  }
@@ -1430,9 +1430,9 @@ static void vfio_ap_mdev_close_device(struct vfio_device 
*vdev)
        struct ap_matrix_mdev *matrix_mdev =
                container_of(vdev, struct ap_matrix_mdev, vdev);
- vfio_unregister_notifier(vdev->dev, VFIO_IOMMU_NOTIFY,
+       vfio_unregister_notifier(vdev, VFIO_IOMMU_NOTIFY,
                                 &matrix_mdev->iommu_notifier);
-       vfio_unregister_notifier(vdev->dev, VFIO_GROUP_NOTIFY,
+       vfio_unregister_notifier(vdev, VFIO_GROUP_NOTIFY,
                                 &matrix_mdev->group_notifier);
        vfio_ap_mdev_unset_kvm(matrix_mdev);
  }
looks good for vfio_ap.
Reviewed-by: Jason J. Herne <jjhe...@linux.ibm.com>


--
-- Jason J. Herne (jjhe...@linux.ibm.com)

Reply via email to