[Mesa-dev] [PATCH 00/20] Add support for GL_EXT_semaphore v3
Andres Rodriguez
andresx7 at gmail.com
Tue Jan 23 18:04:50 UTC 2018
Rebased on latest mesa and dropped the gallium fence->semaphore rename.
Andres Rodriguez (20):
gallium: add type parameter to create_fence_fd
gallium: introduce PIPE_CAP_SEMAPHORE_SIGNAL
gallium: introduce PIPE_FD_TYPE_SYNCOBJ
gallium: add fence_server_signal()
u_threaded_context: add support for fence_server_signal v2
mesa/st: introduce EXT_semaphore and EXT_semaphore_fd v2
mesa: add support for semaphore object creation/import/delete v3
mesa/st: add support for semaphore object create/import/delete v2
mesa: add semaphore parameter stub v2
mesa: add support for semaphore object signal/wait v2
mesa/st: add support for semaphore object signal/wait v3
mesa: implement buffer/texture barriers for semaphore signal/wait v2
winsys/amdgpu: add support for syncobj signaling v3
radeonsi: add support for importing PIPE_FD_TYPE_SYNCOBJ semaphores
radeonsi: implement semaphore_server_signal v2
radeonsi: fix fence_server_sync() holding up extra work v2
radeonsi: advertise support for GL_EXT_semaphore
mesa: fix error codes for importing memory/semaphore FDs
mesa: fix glGet for ext_external_objects parameters
mesa: check for invalid index on UUID glGet queries
src/gallium/auxiliary/util/u_tests.c | 7 +-
src/gallium/auxiliary/util/u_threaded_context.c | 25 ++-
.../auxiliary/util/u_threaded_context_calls.h | 1 +
src/gallium/docs/source/context.rst | 31 +++
src/gallium/docs/source/screen.rst | 2 +
src/gallium/drivers/etnaviv/etnaviv_fence.c | 4 +-
src/gallium/drivers/etnaviv/etnaviv_fence.h | 3 +-
src/gallium/drivers/etnaviv/etnaviv_screen.c | 1 +
src/gallium/drivers/freedreno/freedreno_fence.c | 4 +-
src/gallium/drivers/freedreno/freedreno_fence.h | 3 +-
src/gallium/drivers/freedreno/freedreno_screen.c | 1 +
src/gallium/drivers/i915/i915_screen.c | 1 +
src/gallium/drivers/llvmpipe/lp_screen.c | 1 +
src/gallium/drivers/nouveau/nv30/nv30_screen.c | 1 +
src/gallium/drivers/nouveau/nv50/nv50_screen.c | 1 +
src/gallium/drivers/nouveau/nvc0/nvc0_screen.c | 1 +
src/gallium/drivers/r300/r300_screen.c | 1 +
src/gallium/drivers/r600/r600_pipe.c | 1 +
src/gallium/drivers/radeon/radeon_winsys.h | 12 ++
src/gallium/drivers/radeonsi/si_fence.c | 113 ++++++++---
src/gallium/drivers/radeonsi/si_get.c | 3 +
src/gallium/drivers/radeonsi/si_pipe.c | 1 -
src/gallium/drivers/softpipe/sp_screen.c | 1 +
src/gallium/drivers/svga/svga_pipe_flush.c | 4 +-
src/gallium/drivers/svga/svga_screen.c | 1 +
src/gallium/drivers/swr/swr_screen.cpp | 1 +
src/gallium/drivers/vc4/vc4_screen.c | 1 +
src/gallium/drivers/virgl/virgl_screen.c | 1 +
src/gallium/include/pipe/p_context.h | 14 +-
src/gallium/include/pipe/p_defines.h | 7 +
src/gallium/state_trackers/dri/dri_helpers.c | 2 +-
src/gallium/winsys/amdgpu/drm/amdgpu_cs.c | 83 +++++++-
src/gallium/winsys/amdgpu/drm/amdgpu_cs.h | 4 +
src/mesa/Makefile.sources | 2 +
src/mesa/main/dd.h | 58 ++++++
src/mesa/main/extensions_table.h | 2 +
src/mesa/main/externalobjects.c | 224 ++++++++++++++++++++-
src/mesa/main/externalobjects.h | 31 ++-
src/mesa/main/get.c | 7 +
src/mesa/main/get_hash_params.py | 5 +
src/mesa/main/mtypes.h | 10 +
src/mesa/main/shared.c | 17 ++
src/mesa/meson.build | 2 +
src/mesa/state_tracker/st_cb_semaphoreobjects.c | 129 ++++++++++++
src/mesa/state_tracker/st_cb_semaphoreobjects.h | 25 +++
src/mesa/state_tracker/st_context.c | 2 +
src/mesa/state_tracker/st_extensions.c | 2 +
47 files changed, 805 insertions(+), 48 deletions(-)
create mode 100644 src/mesa/state_tracker/st_cb_semaphoreobjects.c
create mode 100644 src/mesa/state_tracker/st_cb_semaphoreobjects.h
--
2.14.1
More information about the mesa-dev
mailing list