You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When I construct vk::SubmitInfo and pass empty list for wait semaphores but with some wait_dst_stage_mask, the wait_semaphore_count value is being overwriten by length of the mask.
submit_info.wait_semaphore_count = vk_wait_semaphores.len() as u32;
I would be glad to submit a PR with fix, but at the same time I have a suspicion, that p_wait_dst_stage_mask must not be an array but a pointer to a number, but I am not sure yet. Will check it tomorrow and let you know.
The text was updated successfully, but these errors were encountered:
VUID-VkSubmitInfo-pWaitSemaphores-parameter
If waitSemaphoreCount is not 0, pWaitSemaphores must be a valid pointer to an array of waitSemaphoreCount valid VkSemaphore handles
VUID-VkSubmitInfo-pWaitDstStageMask-parameter
If waitSemaphoreCount is not 0, pWaitDstStageMask must be a valid pointer to an array of waitSemaphoreCount valid combinations of VkPipelineStageFlagBits values
The list length for .wait_semaphores() and .wait_dst_stage_mask() must be equal, after all:
pWaitDstStageMask is a pointer to an array of pipeline stages at which each corresponding semaphore wait will occur.
And those semahpore waits... Come from pWaitSemaphores. It's a 1:1 mapping.
ash does not currently validate that they are the same, but there have been thoughts of providing a single builder function that requires all slices at once to be able to assert this: #441 (comment).
MarijnS95
changed the title
Critical bug in submit info
Deal with VkSubmitInfo sharing waitSemaphoreCount for pWaitSemaphores and pWaitDstStageMaskDec 17, 2023
When I construct
vk::SubmitInfo
and pass empty list for wait semaphores but with somewait_dst_stage_mask
, thewait_semaphore_count
value is being overwriten by length of the mask.It is in
vk::definitions
.My code:
Log Output:
Workaround, otherwise it seg faults on submit:
I would be glad to submit a PR with fix, but at the same time I have a suspicion, that
p_wait_dst_stage_mask
must not be an array but a pointer to a number, but I am not sure yet. Will check it tomorrow and let you know.The text was updated successfully, but these errors were encountered: