This series adds support for the native fence fd extension to vc4. The implementation relies on a newly introduced kernel interface that allows submitting syncobjs for in/out fences during job submission.
Since syncobjs are relatively new, patches 1 and 3 have build changes for automake and meson to require a recent libdrm version. There is some scope here to replace the previous sequence number based implementation with only syncobjs, but given that we need to continue supporting older kernels I felt it would have only added complexity. This has been tested with piglit and kmscube -A(tomic). In particular, I checked that the fd numbers weren't increasing during the kmscube run. Should not be merged until the kernel side lands. In particular, patch 2 is purely provisional. Stefan Schake (7): broadcom/vc4: Drop libdrm_vc4 requirement drm-uapi: Update vc4 header with syncobj submit support broadcom/vc4: Bump libdrm requirement broadcom/vc4: Detect syncobj support broadcom/vc4: Store job fence in syncobj broadcom/vc4: Expose syncobj import broadcom/vc4: Native fence fd support configure.ac | 3 +- include/drm-uapi/vc4_drm.h | 15 ++++++++ meson.build | 2 + src/gallium/drivers/vc4/vc4_context.c | 51 ++++++++++++++++++++++--- src/gallium/drivers/vc4/vc4_context.h | 12 +++++- src/gallium/drivers/vc4/vc4_fence.c | 68 +++++++++++++++++++++++++++++++-- src/gallium/drivers/vc4/vc4_job.c | 50 +++++++++++++++++++++++- src/gallium/drivers/vc4/vc4_screen.c | 8 +++- src/gallium/drivers/vc4/vc4_screen.h | 5 ++- src/gallium/drivers/vc4/vc4_simulator.c | 1 + 10 files changed, 198 insertions(+), 17 deletions(-) -- 2.14.1 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev