From ebe9494b61bf7cb6bb4e714f4cd43390629c0c1b Mon Sep 17 00:00:00 2001 From: Emma Anholt Date: Thu, 21 Oct 2021 13:06:38 -0700 Subject: [PATCH] turnip: Drop the assertion about the temporary bit in sync fd imports. Khronos's conclusion was that you only need the bit when you want temporary and there's a choice between temporary and permanent. Part-of: --- src/freedreno/ci/deqp-freedreno-a630-skips.txt | 3 --- src/freedreno/vulkan/tu_drm.c | 11 ++++++++++- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/freedreno/ci/deqp-freedreno-a630-skips.txt b/src/freedreno/ci/deqp-freedreno-a630-skips.txt index f9cab0aa952..542314d0417 100644 --- a/src/freedreno/ci/deqp-freedreno-a630-skips.txt +++ b/src/freedreno/ci/deqp-freedreno-a630-skips.txt @@ -5,9 +5,6 @@ # Note normal pre-merge CI also includes -premerge-skips.txt, and that's where # "it's slow but would pass/fail/crash within a couple of minutes" skips should go. -# Crashes likely caused by https://gitlab.khronos.org/Tracker/vk-gl-cts/-/issues/2701 -dEQP-VK.synchronization.cross_instance.*binary_semaphore_fence_fd - # Timeouts in CI even after 5 minutes dEQP-VK.tessellation.invariance.outer_edge_division.quads_equal_spacing dEQP-VK.tessellation.invariance.outer_edge_division.quads_fractional_even_spacing diff --git a/src/freedreno/vulkan/tu_drm.c b/src/freedreno/vulkan/tu_drm.c index a3a1b888fae..ae8c037beb9 100644 --- a/src/freedreno/vulkan/tu_drm.c +++ b/src/freedreno/vulkan/tu_drm.c @@ -658,7 +658,16 @@ sync_import(VkDevice _device, struct tu_syncobj *sync, bool temporary, bool sync *dst = handle.handle; close(fd); } else { - assert(temporary); + /* Note: SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT is always temporary, but the + * user doesn't have to specify the temporary bit because that's only + * needed for choosing a permanence when there's an option. + * + * "VK_SEMAPHORE_IMPORT_TEMPORARY_BIT specifies that the semaphore payload + * will be imported only temporarily, as described in Importing Semaphore + * Payloads, regardless of the permanence of handleType" + * + * https://gitlab.khronos.org/Tracker/vk-gl-cts/-/issues/2701 + */ struct drm_syncobj_create create = {};