zink: rework cmdbuf submission to be more extensible

no functional changes

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25624>
This commit is contained in:
Mike Blumenkrantz 2023-10-13 08:41:57 -04:00 committed by Marge Bot
parent 7d0dbdeca2
commit 8d0eaf97db

View file

@ -612,12 +612,13 @@ submit_queue(void *data, void *gdata, int thread_index)
si[ZINK_SUBMIT_CMDBUF].waitSemaphoreCount = util_dynarray_num_elements(&bs->wait_semaphores, VkSemaphore);
si[ZINK_SUBMIT_CMDBUF].pWaitSemaphores = bs->wait_semaphores.data;
si[ZINK_SUBMIT_CMDBUF].pWaitDstStageMask = bs->wait_semaphore_stages.data;
si[ZINK_SUBMIT_CMDBUF].commandBufferCount = bs->has_barriers ? 2 : 1;
VkCommandBuffer cmdbufs[2] = {
bs->reordered_cmdbuf,
bs->cmdbuf,
};
si[ZINK_SUBMIT_CMDBUF].pCommandBuffers = bs->has_barriers ? cmdbufs : &cmdbufs[1];
VkCommandBuffer cmdbufs[2];
unsigned c = 0;
if (bs->has_barriers)
cmdbufs[c++] = bs->reordered_cmdbuf;
cmdbufs[c++] = bs->cmdbuf;
si[ZINK_SUBMIT_CMDBUF].pCommandBuffers = cmdbufs;
si[ZINK_SUBMIT_CMDBUF].commandBufferCount = c;
/* assorted signal submit from wsi/externals */
si[ZINK_SUBMIT_CMDBUF].signalSemaphoreCount = util_dynarray_num_elements(&bs->signal_semaphores, VkSemaphore);
si[ZINK_SUBMIT_CMDBUF].pSignalSemaphores = bs->signal_semaphores.data;