From 02fea6c179b00bd9dad179638ee1491c1acea65a Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Mon, 25 Apr 2022 11:08:42 -0500 Subject: [PATCH] vulkan: Set signals[i].stageMask = ALL_COMMANDS for QueueSubmit2 wrapping My understanding of the signal masks is that they control what stages must complete before the semaphore is signaled. Using 0 theoretically means the semaphore could be signaled immediately without waiting on anything. Use ~0 instead to say it depends on everything. Fixes: 97f0a4494b97 ("vulkan: implement legacy entrypoints on top of VK_KHR_synchronization2") Reviewed-by: Iago Toral Quiroga Part-of: --- src/vulkan/runtime/vk_synchronization2.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/vulkan/runtime/vk_synchronization2.c b/src/vulkan/runtime/vk_synchronization2.c index aead366ce17..870f93ce1cb 100644 --- a/src/vulkan/runtime/vk_synchronization2.c +++ b/src/vulkan/runtime/vk_synchronization2.c @@ -370,7 +370,7 @@ vk_common_QueueSubmit( .sType = VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO_KHR, .semaphore = pSubmits[s].pSignalSemaphores[i], .value = signal_values ? signal_values[i] : 0, - .stageMask = 0, + .stageMask = VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT, .deviceIndex = group_info ? group_info->pSignalSemaphoreDeviceIndices[i] : 0, }; }