From 3472fed4da18d99622517af5aa5c32b1f797c299 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Thu, 17 Mar 2022 11:30:52 -0400 Subject: [PATCH] zink: set vbo resource usage on bind this is how other descriptor binds work, and it makes repeated draws with the same vbo binds faster since this was a redundant operation Reviewed-by: Dave Airlie Part-of: --- src/gallium/drivers/zink/zink_context.c | 1 + src/gallium/drivers/zink/zink_draw.cpp | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/drivers/zink/zink_context.c b/src/gallium/drivers/zink/zink_context.c index a79ab9d0913..5362fb2040c 100644 --- a/src/gallium/drivers/zink/zink_context.c +++ b/src/gallium/drivers/zink/zink_context.c @@ -987,6 +987,7 @@ zink_set_vertex_buffers(struct pipe_context *pctx, update_res_bind_count(ctx, res, false, false); ctx_vb->stride = vb->stride; ctx_vb->buffer_offset = vb->buffer_offset; + zink_batch_resource_usage_set(&ctx->batch, res, false); /* always barrier before possible rebind */ zink_resource_buffer_barrier(ctx, res, VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT, VK_PIPELINE_STAGE_VERTEX_INPUT_BIT); diff --git a/src/gallium/drivers/zink/zink_draw.cpp b/src/gallium/drivers/zink/zink_draw.cpp index b5e66fd4456..682135c11c0 100644 --- a/src/gallium/drivers/zink/zink_draw.cpp +++ b/src/gallium/drivers/zink/zink_draw.cpp @@ -144,7 +144,6 @@ zink_bind_vertex_buffers(struct zink_batch *batch, struct zink_context *ctx) buffer_strides[i] = vb->stride; if (DYNAMIC_STATE == ZINK_DYNAMIC_VERTEX_INPUT) elems->hw_state.dynbindings[i].stride = vb->stride; - zink_batch_resource_usage_set(&ctx->batch, zink_resource(vb->buffer.resource), false); } else { buffers[i] = zink_resource(ctx->dummy_vertex_buffer)->obj->buffer; buffer_offsets[i] = 0;