summaryrefslogtreecommitdiffstats
path: root/include/uapi/drm
diff options
context:
space:
mode:
authorRobert Foss2018-11-12 17:51:56 +0100
committerGerd Hoffmann2018-11-14 14:21:02 +0100
commit2cd7b6f08bc4cf06d1f00f8b42720a8457861ca1 (patch)
tree380b8046626d860e6b858eb11cc6107f14c19037 /include/uapi/drm
parentdrm/virtio: add uapi for in and out explicit fences (diff)
downloadkernel-qcow2-linux-2cd7b6f08bc4cf06d1f00f8b42720a8457861ca1.tar.gz
kernel-qcow2-linux-2cd7b6f08bc4cf06d1f00f8b42720a8457861ca1.tar.xz
kernel-qcow2-linux-2cd7b6f08bc4cf06d1f00f8b42720a8457861ca1.zip
drm/virtio: add in/out fence support for explicit synchronization
When the execbuf call receives an in-fence it will get the dma_fence related to that fence fd and wait on it before submitting the draw call. On the out-fence side we get fence returned by the submitted draw call and attach it to a sync_file and send the sync_file fd to userspace. On error -1 is returned to userspace. VIRTGPU_EXECBUF_FENCE_FD_IN & VIRTGPU_EXECBUF_FENCE_FD_OUT are supported at the simultaneously and can be flagged for simultaneously. Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.com> Signed-off-by: Robert Foss <robert.foss@collabora.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Link: http://patchwork.freedesktop.org/patch/msgid/20181112165157.32765-4-robert.foss@collabora.com Suggested-by: Rob Herring <robh@kernel.org> Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Diffstat (limited to 'include/uapi/drm')
-rw-r--r--include/uapi/drm/virtgpu_drm.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/uapi/drm/virtgpu_drm.h b/include/uapi/drm/virtgpu_drm.h
index 91062f4ac7c5..f06a789f34cd 100644
--- a/include/uapi/drm/virtgpu_drm.h
+++ b/include/uapi/drm/virtgpu_drm.h
@@ -66,7 +66,7 @@ struct drm_virtgpu_execbuffer {
__u64 command; /* void* */
__u64 bo_handles;
__u32 num_bo_handles;
- __s32 fence_fd;
+ __s32 fence_fd; /* in/out fence fd (see VIRTGPU_EXECBUF_FENCE_FD_IN/OUT) */
};
#define VIRTGPU_PARAM_3D_FEATURES 1 /* do we have 3D features in the hw */