Fix buffer RAW hazards in MultiQueue synchronization tests
authorAnthony Pesch <apesch@nvidia.com>
Tue, 26 Mar 2019 16:24:17 +0000 (12:24 -0400)
committerAlexander Galazin <Alexander.Galazin@arm.com>
Thu, 4 Apr 2019 18:20:05 +0000 (14:20 -0400)
commit93dc8a343c7ea67a2c8ffb694b45ff44703fbe6f
tree22dfe4d261ff23601ecccee4709b9c0706278fe4
parent0fdedf4c80310830b78fe131caf85e2973411588
Fix buffer RAW hazards in MultiQueue synchronization tests

The MultiQueue tests emit barriers between command buffers for two reasons:

1. To express the data dependencies between different pipeline stages.
2. To transfer ownership of the resource between queue families.

The exclusive sharing mode tests need both of these barriers, while the
concurrent mode tests only need to describe the data dependency.

Previously, a barrier was only emitted for the exclusive tests, causing
the concurrent tests to not have a barrier expressing the data dependencies
between the pipeline stages. Now the data dependencies are described for
both the exlusive and concurrent tests, while the ownership transfer is
only performed for exclusive tests.

Affects: dEQP-VK.synchronization.op.multi_queue.*.write_*_read_*.buffer_*

Components: Vulkan
VK-GL-CTS issue: 1650

Change-Id: Ic3bc83a7dcab8686754aea5267afeb10090038d0
external/vulkancts/modules/vulkan/synchronization/vktSynchronizationOperationMultiQueueTests.cpp