C Specification

The VkSubmitInfo2KHR structure is defined as:

// Provided by VK_KHR_synchronization2
typedef struct VkSubmitInfo2KHR {
    VkStructureType                        sType;
    const void*                            pNext;
    VkSubmitFlagsKHR                       flags;
    uint32_t                               waitSemaphoreInfoCount;
    const VkSemaphoreSubmitInfoKHR*        pWaitSemaphoreInfos;
    uint32_t                               commandBufferInfoCount;
    const VkCommandBufferSubmitInfoKHR*    pCommandBufferInfos;
    uint32_t                               signalSemaphoreInfoCount;
    const VkSemaphoreSubmitInfoKHR*        pSignalSemaphoreInfos;
} VkSubmitInfo2KHR;

Members

  • sType is the type of this structure.

  • pNext is NULL or a pointer to a structure extending this structure.

  • flags is a bitmask of VkSubmitFlagBitsKHR.

  • waitSemaphoreInfoCount is the number of elements in pWaitSemaphoreInfos.

  • pWaitSemaphoreInfos is a pointer to an array of VkSemaphoreSubmitInfoKHR structures defining semaphore wait operations.

  • commandBufferInfoCount is the number of elements in pCommandBufferInfos and the number of command buffers to execute in the batch.

  • pCommandBufferInfos is a pointer to an array of VkCommandBufferSubmitInfoKHR structures describing command buffers to execute in the batch.

  • signalSemaphoreInfoCount is the number of elements in pSignalSemaphoreInfos.

  • pSignalSemaphoreInfos is a pointer to an array of VkSemaphoreSubmitInfoKHR describing semaphore signal operations.

Description

Valid Usage
  • VUID-VkSubmitInfo2KHR-semaphore-03881
    If the same semaphore is used as the semaphore member of both an element of pSignalSemaphoreInfos and pWaitSemaphoreInfos, and that semaphore is a timeline semaphore, the value member of the pSignalSemaphoreInfos element must be greater than the value member of the pWaitSemaphoreInfos element

  • VUID-VkSubmitInfo2KHR-semaphore-03882
    If the semaphore member of any element of pSignalSemaphoreInfos is a timeline semaphore, the value member of that element must have a value greater than the current value of the semaphore when the semaphore signal operation is executed

  • VUID-VkSubmitInfo2KHR-semaphore-03883
    If the semaphore member of any element of pSignalSemaphoreInfos is a timeline semaphore, the value member of that element must have a value which does not differ from the current value of the semaphore or the value of any outstanding semaphore wait or signal operation on that semaphore by more than maxTimelineSemaphoreValueDifference

  • VUID-VkSubmitInfo2KHR-semaphore-03884
    If the semaphore member of any element of pWaitSemaphoreInfos is a timeline semaphore, the value member of that element must have a value which does not differ from the current value of the semaphore or the value of any outstanding semaphore wait or signal operation on that semaphore by more than maxTimelineSemaphoreValueDifference

  • VUID-VkSubmitInfo2KHR-flags-03885
    If the protected memory feature is not enabled, flags must not include VK_SUBMIT_PROTECTED_BIT_KHR

  • VUID-VkSubmitInfo2KHR-flags-03886
    If flags includes VK_SUBMIT_PROTECTED_BIT_KHR, all elements of pCommandBuffers must be protected command buffers

  • VUID-VkSubmitInfo2KHR-flags-03887
    If flags does not include VK_SUBMIT_PROTECTED_BIT_KHR, each element of pCommandBuffers must not be a protected command buffer

Valid Usage (Implicit)
  • VUID-VkSubmitInfo2KHR-sType-sType
    sType must be VK_STRUCTURE_TYPE_SUBMIT_INFO_2_KHR

  • VUID-VkSubmitInfo2KHR-pNext-pNext
    Each pNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkPerformanceQuerySubmitInfoKHR, VkWin32KeyedMutexAcquireReleaseInfoKHR, or VkWin32KeyedMutexAcquireReleaseInfoNV

  • VUID-VkSubmitInfo2KHR-sType-unique
    The sType value of each struct in the pNext chain must be unique

  • VUID-VkSubmitInfo2KHR-flags-parameter
    flags must be a valid combination of VkSubmitFlagBitsKHR values

  • VUID-VkSubmitInfo2KHR-pWaitSemaphoreInfos-parameter
    If waitSemaphoreInfoCount is not 0, pWaitSemaphoreInfos must be a valid pointer to an array of waitSemaphoreInfoCount valid VkSemaphoreSubmitInfoKHR structures

  • VUID-VkSubmitInfo2KHR-pCommandBufferInfos-parameter
    If commandBufferInfoCount is not 0, pCommandBufferInfos must be a valid pointer to an array of commandBufferInfoCount valid VkCommandBufferSubmitInfoKHR structures

  • VUID-VkSubmitInfo2KHR-pSignalSemaphoreInfos-parameter
    If signalSemaphoreInfoCount is not 0, pSignalSemaphoreInfos must be a valid pointer to an array of signalSemaphoreInfoCount valid VkSemaphoreSubmitInfoKHR structures

See Also

Document Notes

For more information, see the Vulkan Specification

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

Copyright 2014-2021 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0