Fix srcStageMask in vkCmdWaitEvents in external fence tests
authorziga-lunarg <ziga@lunarg.com>
Wed, 21 Sep 2022 16:45:54 +0000 (18:45 +0200)
committerMatthew Netsch <quic_mnetsch@quicinc.com>
Thu, 6 Oct 2022 15:47:06 +0000 (15:47 +0000)
If event is set with vkSetEvent the srcStageMask must be
VK_PIPELINE_STAGE_HOST_BIT

Components: Vulkan

VK-GL-CTS issue: 3979

Affected tests:
dEQP-VK.api.external.fence.*

Change-Id: I9ca6fb5bdb597639cd5cb88afdbb03dde565acd8

external/vulkancts/modules/vulkan/api/vktApiExternalMemoryTests.cpp

index cc9c177..2a5b782 100644 (file)
@@ -609,7 +609,7 @@ void submitEmptySignalAndGetSemaphoreNative (       const vk::DeviceInterface&                                              vk
                is already signalled, instead of a file descriptor, . In order to make sure that a valid file descriptor is returned
                we use vkCmdWaitEvents to make sure that vkQueueSubmit doesn't signal the fence.
        */
-       vk.cmdWaitEvents(*cmdBuffer, 1, &event.get(), vk::VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT, vk::VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, 0, DE_NULL, 0, DE_NULL, 0, DE_NULL);
+       vk.cmdWaitEvents(*cmdBuffer, 1, &event.get(), vk::VK_PIPELINE_STAGE_HOST_BIT, vk::VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, 0, DE_NULL, 0, DE_NULL, 0, DE_NULL);
        vk.endCommandBuffer(*cmdBuffer);
 
        const vk::VkSubmitInfo submit =
@@ -722,7 +722,7 @@ void submitEmptySignalAndGetFenceNative (   const vk::DeviceInterface&                                      vk,
                file descriptor, if the fence is already signalled. In order to make sure that a valid file descriptor is returned
                we use vkCmdWaitEvents to make sure that vkQueueSubmit doesn't signal the fence.
        */
-       vk.cmdWaitEvents(*cmdBuffer, 1, &event.get(), vk::VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT, vk::VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, 0, DE_NULL, 0, DE_NULL, 0, DE_NULL);
+       vk.cmdWaitEvents(*cmdBuffer, 1, &event.get(), vk::VK_PIPELINE_STAGE_HOST_BIT, vk::VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, 0, DE_NULL, 0, DE_NULL, 0, DE_NULL);
        vk.endCommandBuffer(*cmdBuffer);
 
        const vk::VkSubmitInfo submit =