We'll need it when initiating a dma-fence.

Signed-off-by: Gurchetan Singh <gurchetansi...@chromium.org>
---
 drivers/gpu/drm/virtio/virtgpu_drv.h   | 4 ++--
 drivers/gpu/drm/virtio/virtgpu_fence.c | 3 ++-
 drivers/gpu/drm/virtio/virtgpu_ioctl.c | 9 +++++----
 drivers/gpu/drm/virtio/virtgpu_plane.c | 2 +-
 4 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/drivers/gpu/drm/virtio/virtgpu_drv.h 
b/drivers/gpu/drm/virtio/virtgpu_drv.h
index b4f85c5fedb9..76223e2aa68d 100644
--- a/drivers/gpu/drm/virtio/virtgpu_drv.h
+++ b/drivers/gpu/drm/virtio/virtgpu_drv.h
@@ -355,8 +355,8 @@ struct drm_plane *virtio_gpu_plane_init(struct 
virtio_gpu_device *vgdev,
                                        int index);
 
 /* virtio_gpu_fence.c */
-struct virtio_gpu_fence *virtio_gpu_fence_alloc(
-       struct virtio_gpu_device *vgdev);
+struct virtio_gpu_fence *virtio_gpu_fence_alloc(struct virtio_gpu_device 
*vgdev,
+                                               struct virtio_gpu_fpriv *fpriv);
 void virtio_gpu_fence_emit(struct virtio_gpu_device *vgdev,
                          struct virtio_gpu_ctrl_hdr *cmd_hdr,
                          struct virtio_gpu_fence *fence);
diff --git a/drivers/gpu/drm/virtio/virtgpu_fence.c 
b/drivers/gpu/drm/virtio/virtgpu_fence.c
index 2fe9c7ebcbd4..f0a7ef80e484 100644
--- a/drivers/gpu/drm/virtio/virtgpu_fence.c
+++ b/drivers/gpu/drm/virtio/virtgpu_fence.c
@@ -73,7 +73,8 @@ static const struct dma_fence_ops virtio_fence_ops = {
        .timeline_value_str  = virtio_timeline_value_str,
 };
 
-struct virtio_gpu_fence *virtio_gpu_fence_alloc(struct virtio_gpu_device 
*vgdev)
+struct virtio_gpu_fence *virtio_gpu_fence_alloc(struct virtio_gpu_device 
*vgdev,
+                                               struct virtio_gpu_fpriv *fpriv)
 {
        struct virtio_gpu_fence_driver *drv = &vgdev->fence_drv;
        struct virtio_gpu_fence *fence = kzalloc(sizeof(struct 
virtio_gpu_fence),
diff --git a/drivers/gpu/drm/virtio/virtgpu_ioctl.c 
b/drivers/gpu/drm/virtio/virtgpu_ioctl.c
index 336cc9143205..4860dcb3b3bb 100644
--- a/drivers/gpu/drm/virtio/virtgpu_ioctl.c
+++ b/drivers/gpu/drm/virtio/virtgpu_ioctl.c
@@ -160,7 +160,7 @@ static int virtio_gpu_execbuffer_ioctl(struct drm_device 
*dev, void *data,
                        goto out_memdup;
        }
 
-       out_fence = virtio_gpu_fence_alloc(vgdev);
+       out_fence = virtio_gpu_fence_alloc(vgdev, vfpriv);
        if(!out_fence) {
                ret = -ENOMEM;
                goto out_unresv;
@@ -226,6 +226,7 @@ static int virtio_gpu_resource_create_ioctl(struct 
drm_device *dev, void *data,
                                            struct drm_file *file)
 {
        struct virtio_gpu_device *vgdev = dev->dev_private;
+       struct virtio_gpu_fpriv *vfpriv = file->driver_priv;
        struct drm_virtgpu_resource_create *rc = data;
        struct virtio_gpu_fence *fence;
        int ret;
@@ -265,7 +266,7 @@ static int virtio_gpu_resource_create_ioctl(struct 
drm_device *dev, void *data,
        if (params.size == 0)
                params.size = PAGE_SIZE;
 
-       fence = virtio_gpu_fence_alloc(vgdev);
+       fence = virtio_gpu_fence_alloc(vgdev, vfpriv);
        if (!fence)
                return -ENOMEM;
        ret = virtio_gpu_object_create(vgdev, &params, &qobj, fence);
@@ -329,7 +330,7 @@ static int virtio_gpu_transfer_from_host_ioctl(struct 
drm_device *dev,
        if (ret != 0)
                goto err_put_free;
 
-       fence = virtio_gpu_fence_alloc(vgdev);
+       fence = virtio_gpu_fence_alloc(vgdev, vfpriv);
        if (!fence) {
                ret = -ENOMEM;
                goto err_unlock;
@@ -375,7 +376,7 @@ static int virtio_gpu_transfer_to_host_ioctl(struct 
drm_device *dev, void *data,
                        goto err_put_free;
 
                ret = -ENOMEM;
-               fence = virtio_gpu_fence_alloc(vgdev);
+               fence = virtio_gpu_fence_alloc(vgdev, vfpriv);
                if (!fence)
                        goto err_unlock;
 
diff --git a/drivers/gpu/drm/virtio/virtgpu_plane.c 
b/drivers/gpu/drm/virtio/virtgpu_plane.c
index 52d24179bcec..0cf43936abb3 100644
--- a/drivers/gpu/drm/virtio/virtgpu_plane.c
+++ b/drivers/gpu/drm/virtio/virtgpu_plane.c
@@ -202,7 +202,7 @@ static int virtio_gpu_cursor_prepare_fb(struct drm_plane 
*plane,
        vgfb = to_virtio_gpu_framebuffer(new_state->fb);
        bo = gem_to_virtio_gpu_obj(vgfb->base.obj[0]);
        if (bo && bo->dumb && (plane->state->fb != new_state->fb)) {
-               vgfb->fence = virtio_gpu_fence_alloc(vgdev);
+               vgfb->fence = virtio_gpu_fence_alloc(vgdev, NULL);
                if (!vgfb->fence)
                        return -ENOMEM;
        }
-- 
2.25.1.481.gfbce0eb801-goog

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to