This series implements fence support for drm/virtio and has been tested using qemu, kmscube and the below branches. Rob Herring solved a reference counting issue and suggested a context check for the execbuf ioctl, his changes have been included in the below commits to keep the tree working at all commits. The linux series can be found here: https://gitlab.collabora.com/robertfoss/linux/commits/virtio_fences_v5 As for mesa, the branch can be found here: https://gitlab.collabora.com/robertfoss/mesa/commits/virtio_fences_v3 Changes since v4: - drm/virtio: add uapi for in and out explicit fences - Emil/Gerd: Improved commit message and fence_fd comment Changes since v3: - Rebased on drm-misc-next - drm/virtio: add virtio_gpu_alloc_fence() - Gerd: Clarified and extended commit message - Emil: Fixed whitespace issue - Emil: Changed label name from fail_fence to fail_backoff - Emil: Remove special case for !fence->drv in virtio_gpu_fence_cleanup() - drm/virtio: add uapi for in and out explicit fences - Emil: Added r-b - Emil: Move fence_fd assignment to after sanity checks - drm/virtio: add in-fences support for explicit synchronization - Move all in_fence handling to the same VIRTGPU_EXECBUF_FENCE_FD_IN block - Emil: Make sure to always call dma_fence_put() - Emil: Added r-b - drm/virtio: add out-fences support for explicit synchronization - Emil: Combine with in-fences patch - drm/virtio: bump driver version after explicit synchronization addition - Emil: Added r-b Changes since v2: - drm/virtio: add virtio_gpu_alloc_fence() - Forward port and fix compilation issues - drm/virtio: add uapi for in and out explicit fences - Check exbuf->flags for unsupported flags - drm/virtio: add in-fences support for explicit synchronization Gustavo Padovan (1): drm/virtio: bump driver version after explicit synchronization addition Robert Foss (3): drm/virtio: add virtio_gpu_alloc_fence() drm/virtio: add uapi for in and out explicit fences drm/virtio: add in/out fence support for explicit synchronization drivers/gpu/drm/virtio/virtgpu_drv.h | 8 +- drivers/gpu/drm/virtio/virtgpu_fence.c | 29 +++++-- drivers/gpu/drm/virtio/virtgpu_ioctl.c | 108 +++++++++++++++++++++---- drivers/gpu/drm/virtio/virtgpu_plane.c | 46 +++++++++-- drivers/gpu/drm/virtio/virtgpu_vq.c | 2 +- include/uapi/drm/virtgpu_drm.h | 13 ++- 6 files changed, 173 insertions(+), 33 deletions(-) -- 2.17.1 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel