// Copyright 2019-2021 The Khronos Group Inc. // // SPDX-License-Identifier: CC-BY-4.0 // Common Valid Usage // Common to vkCmdPipelineBarrier and vkCmdWaitEvents * [[VUID-{refpage}-srcAccessMask-02815]] The pname:srcAccessMask member of each element of pname:pMemoryBarriers must: only include access flags that are supported by one or more of the pipeline stages in pname:srcStageMask, as specified in the <> * [[VUID-{refpage}-dstAccessMask-02816]] The pname:dstAccessMask member of each element of pname:pMemoryBarriers must: only include access flags that are supported by one or more of the pipeline stages in pname:dstStageMask, as specified in the <> * [[VUID-{refpage}-pBufferMemoryBarriers-02817]] For any element of pname:pBufferMemoryBarriers, if its pname:srcQueueFamilyIndex and pname:dstQueueFamilyIndex members are equal, or if its pname:srcQueueFamilyIndex is the queue family index that was used to create the command pool that pname:commandBuffer was allocated from, then its pname:srcAccessMask member must: only contain access flags that are supported by one or more of the pipeline stages in pname:srcStageMask, as specified in the <> * [[VUID-{refpage}-pBufferMemoryBarriers-02818]] For any element of pname:pBufferMemoryBarriers, if its pname:srcQueueFamilyIndex and pname:dstQueueFamilyIndex members are equal, or if its pname:dstQueueFamilyIndex is the queue family index that was used to create the command pool that pname:commandBuffer was allocated from, then its pname:dstAccessMask member must: only contain access flags that are supported by one or more of the pipeline stages in pname:dstStageMask, as specified in the <> * [[VUID-{refpage}-pImageMemoryBarriers-02819]] For any element of pname:pImageMemoryBarriers, if its pname:srcQueueFamilyIndex and pname:dstQueueFamilyIndex members are equal, or if its pname:srcQueueFamilyIndex is the queue family index that was used to create the command pool that pname:commandBuffer was allocated from, then its pname:srcAccessMask member must: only contain access flags that are supported by one or more of the pipeline stages in pname:srcStageMask, as specified in the <> * [[VUID-{refpage}-pImageMemoryBarriers-02820]] For any element of pname:pImageMemoryBarriers, if its pname:srcQueueFamilyIndex and pname:dstQueueFamilyIndex members are equal, or if its pname:dstQueueFamilyIndex is the queue family index that was used to create the command pool that pname:commandBuffer was allocated from, then its pname:dstAccessMask member must: only contain access flags that are supported by one or more of the pipeline stages in pname:dstStageMask, as specified in the <> // Common Valid Usage