VkDependencyInfo
The VkDependencyInfo structure is defined as:
typedef struct VkDependencyInfo {
    VkStructureType sType;
    const void* pNext;
    VkDependencyFlags dependencyFlags;
    uint32_t memoryBarrierCount;
    const VkMemoryBarrier2* pMemoryBarriers;
    uint32_t bufferMemoryBarrierCount;
    const VkBufferMemoryBarrier2* pBufferMemoryBarriers;
    uint32_t imageMemoryBarrierCount;
    const VkImageMemoryBarrier2* pImageMemoryBarriers;
} VkDependencyInfo;
or the equivalent
typedef VkDependencyInfo VkDependencyInfoKHR;
sTypeis a VkStructureType value identifying this structure.pNextisNULLor a pointer to a structure extending this structure.dependencyFlagsis a bitmask of VkDependencyFlagBits specifying how execution and memory dependencies are formed.memoryBarrierCountis the length of thepMemoryBarriersarray.pMemoryBarriersis a pointer to an array of VkMemoryBarrier2 structures defining memory dependencies between any memory accesses.bufferMemoryBarrierCountis the length of thepBufferMemoryBarriersarray.pBufferMemoryBarriersis a pointer to an array of VkBufferMemoryBarrier2 structures defining memory dependencies between buffer ranges.imageMemoryBarrierCountis the length of thepImageMemoryBarriersarray.pImageMemoryBarriersis a pointer to an array of VkImageMemoryBarrier2 structures defining memory dependencies between image subresources.
This structure defines a set of memory dependencies, as well as queue family ownership transfer operations and image layout transitions.
Each member of pMemoryBarriers, pBufferMemoryBarriers, and
pImageMemoryBarriers defines a separate
memory dependency.
Valid Usage
VUID-VkDependencyInfo-pMemoryBarriers-10605
For each element of pMemoryBarriers, the sType value of each
structure in the pNext chain must be unique
VUID-VkDependencyInfo-pMemoryBarriers-10606
For each element of `pMemoryBarriers`, `pNext` :normative{type="must"} be
either
NULL
or a pointer to a valid instance of VkMemoryBarrierAccessFlags3KHR
Valid Usage (Implicit)
VUID-VkDependencyInfo-sType-sType
sType must be VK_STRUCTURE_TYPE_DEPENDENCY_INFO
VUID-VkDependencyInfo-pNext-pNext
pNext must be NULL
VUID-VkDependencyInfo-dependencyFlags-parameter
dependencyFlags must be a valid combination of VkDependencyFlagBits values
VUID-VkDependencyInfo-pMemoryBarriers-parameter
If memoryBarrierCount is not 0, pMemoryBarriers must be a valid pointer to an array of memoryBarrierCount valid VkMemoryBarrier2 structures
VUID-VkDependencyInfo-pBufferMemoryBarriers-parameter
If bufferMemoryBarrierCount is not 0, pBufferMemoryBarriers must be a valid pointer to an array of bufferMemoryBarrierCount valid VkBufferMemoryBarrier2 structures
VUID-VkDependencyInfo-pImageMemoryBarriers-parameter
If imageMemoryBarrierCount is not 0, pImageMemoryBarriers must be a valid pointer to an array of imageMemoryBarrierCount valid VkImageMemoryBarrier2 structures