diff options
author | Jason Ekstrand <[email protected]> | 2017-08-04 13:08:35 -0700 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2017-08-28 19:33:43 -0700 |
commit | 5f372d93a9088afdbd97c0668f9684f369bc33a2 (patch) | |
tree | 24ac55a035bcd05cdafc1ea7cedb448842f81bf9 /src/intel/vulkan/anv_batch_chain.c | |
parent | d21c1510918bdfe64e89834aafe6f49ac4dfc13d (diff) |
anv: Use DRM sync objects to back fences whenever possible
In order to implement VK_KHR_external_fence, we need to back our fences
with something that's shareable. Since the kernel wait interface for
sync objects already supports waiting for multiple fences in one go, it
makes anv_WaitForFences much simpler if we only have one type of fence.
Reviewed-by: Lionel Landwerlin <[email protected]>
Diffstat (limited to 'src/intel/vulkan/anv_batch_chain.c')
-rw-r--r-- | src/intel/vulkan/anv_batch_chain.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/intel/vulkan/anv_batch_chain.c b/src/intel/vulkan/anv_batch_chain.c index 0a0be8dfc9d..52c45104b22 100644 --- a/src/intel/vulkan/anv_batch_chain.c +++ b/src/intel/vulkan/anv_batch_chain.c @@ -1560,6 +1560,14 @@ anv_cmd_buffer_execbuf(struct anv_device *device, return result; break; + case ANV_FENCE_TYPE_SYNCOBJ: + result = anv_execbuf_add_syncobj(&execbuf, impl->syncobj, + I915_EXEC_FENCE_SIGNAL, + &device->alloc); + if (result != VK_SUCCESS) + return result; + break; + default: unreachable("Invalid fence type"); } |