zink: disable unordered blits when swapchain images need aqcuire
authorMike Blumenkrantz <michael.blumenkrantz@gmail.com>
Mon, 15 May 2023 11:24:02 +0000 (07:24 -0400)
committerMarge Bot <emma+marge@anholt.net>
Mon, 22 May 2023 23:26:45 +0000 (23:26 +0000)
this is consistent with other cmdbuf reordering for blits

Fixes: 3a9f7d70383 ("zink: implement unordered u_blitter calls")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23035>

src/gallium/drivers/zink/zink_blit.c

index 011ad2d..d6c76cc 100644 (file)
@@ -395,6 +395,7 @@ zink_blit(struct pipe_context *pctx,
 
    ctx->unordered_blitting = !(info->render_condition_enable && ctx->render_condition_active) &&
                              zink_screen(ctx->base.screen)->info.have_KHR_dynamic_rendering &&
+                             !needs_present_readback &&
                              zink_get_cmdbuf(ctx, src, dst) == ctx->batch.state->barrier_cmdbuf;
    VkCommandBuffer cmdbuf = ctx->batch.state->cmdbuf;
    VkPipeline pipeline = ctx->gfx_pipeline_state.pipeline;