summaryrefslogtreecommitdiffstats
path: root/src/intel/vulkan/anv_device.c
diff options
context:
space:
mode:
authorJason Ekstrand <[email protected]>2017-08-04 13:08:35 -0700
committerJason Ekstrand <[email protected]>2017-08-28 19:33:43 -0700
commit5f372d93a9088afdbd97c0668f9684f369bc33a2 (patch)
tree24ac55a035bcd05cdafc1ea7cedb448842f81bf9 /src/intel/vulkan/anv_device.c
parentd21c1510918bdfe64e89834aafe6f49ac4dfc13d (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_device.c')
-rw-r--r--src/intel/vulkan/anv_device.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/intel/vulkan/anv_device.c b/src/intel/vulkan/anv_device.c
index a6d5215ab8d..2e0fa19b1aa 100644
--- a/src/intel/vulkan/anv_device.c
+++ b/src/intel/vulkan/anv_device.c
@@ -339,6 +339,8 @@ anv_physical_device_init(struct anv_physical_device *device,
device->has_exec_async = anv_gem_get_param(fd, I915_PARAM_HAS_EXEC_ASYNC);
device->has_exec_fence = anv_gem_get_param(fd, I915_PARAM_HAS_EXEC_FENCE);
device->has_syncobj = anv_gem_get_param(fd, I915_PARAM_HAS_EXEC_FENCE_ARRAY);
+ device->has_syncobj_wait = device->has_syncobj &&
+ anv_gem_supports_syncobj_wait(fd);
bool swizzled = anv_gem_get_bit6_swizzle(fd, I915_TILING_X);