From e8b8279b6103f604e7c977a616e5179520aecca5 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Fri, 10 Feb 2023 08:32:49 -0500 Subject: [PATCH] zink: allocate all batch command buffers in one call just simpler Part-of: --- src/gallium/drivers/zink/zink_batch.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/src/gallium/drivers/zink/zink_batch.c b/src/gallium/drivers/zink/zink_batch.c index fb16a99..d7e56ab 100644 --- a/src/gallium/drivers/zink/zink_batch.c +++ b/src/gallium/drivers/zink/zink_batch.c @@ -292,23 +292,20 @@ create_batch_state(struct zink_context *ctx) goto fail; } + VkCommandBuffer cmdbufs[2]; VkCommandBufferAllocateInfo cbai = {0}; cbai.sType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO; cbai.commandPool = bs->cmdpool; cbai.level = VK_COMMAND_BUFFER_LEVEL_PRIMARY; - cbai.commandBufferCount = 1; + cbai.commandBufferCount = 2; - result = VKSCR(AllocateCommandBuffers)(screen->dev, &cbai, &bs->cmdbuf); - if (result != VK_SUCCESS) { - mesa_loge("ZINK: vkAllocateCommandBuffers failed (%s)", vk_Result_to_str(result)); - goto fail; - } - - result = VKSCR(AllocateCommandBuffers)(screen->dev, &cbai, &bs->barrier_cmdbuf); + result = VKSCR(AllocateCommandBuffers)(screen->dev, &cbai, cmdbufs); if (result != VK_SUCCESS) { mesa_loge("ZINK: vkAllocateCommandBuffers failed (%s)", vk_Result_to_str(result)); goto fail; } + bs->cmdbuf = cmdbufs[0]; + bs->barrier_cmdbuf = cmdbufs[1]; #define SET_CREATE_OR_FAIL(ptr) \ if (!_mesa_set_init(ptr, bs, _mesa_hash_pointer, _mesa_key_pointer_equal)) \ -- 2.7.4