From 49deb9cbe74c2ecca947a0f3122c58d11dc1eafb Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Wed, 22 Feb 2023 20:24:21 -0500 Subject: [PATCH] zink: only update qbo for TIME_ELAPSED on start if !in_rp this otherwise splits the current renderpass for no reason Part-of: --- src/gallium/drivers/zink/zink_query.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/zink/zink_query.c b/src/gallium/drivers/zink/zink_query.c index 6b02f32..e488641 100644 --- a/src/gallium/drivers/zink/zink_query.c +++ b/src/gallium/drivers/zink/zink_query.c @@ -881,7 +881,8 @@ begin_query(struct zink_context *ctx, struct zink_batch *batch, struct zink_quer struct zink_query_start *start = util_dynarray_top_ptr(&q->starts, struct zink_query_start); if (q->type == PIPE_QUERY_TIME_ELAPSED) { VKCTX(CmdWriteTimestamp)(batch->state->cmdbuf, VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, start->vkq[0]->pool->query_pool, start->vkq[0]->query_id); - update_qbo(ctx, q); + if (!batch->in_rp) + update_qbo(ctx, q); zink_batch_usage_set(&q->batch_uses, batch->state); _mesa_set_add(&batch->state->active_queries, q); } -- 2.7.4