From 7af40bb595881a5bdef8870df7ca8605b86d2107 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Tue, 20 Apr 2021 15:05:37 -0400 Subject: [PATCH] zink: move wsi flush info conditional to queue submission having a resource pointer on batch states is now a requirement for keeping scanout objects in sync Fixes: 104603fa763 ("zink: create separate linear tiling image for scanout") Reviewed-by: Adam Jackson Acked-by: Erik Faye-Lund Part-of: --- src/gallium/drivers/zink/zink_batch.c | 2 +- src/gallium/drivers/zink/zink_context.c | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/gallium/drivers/zink/zink_batch.c b/src/gallium/drivers/zink/zink_batch.c index 7fe5f860d40..b19a1ba5e48 100644 --- a/src/gallium/drivers/zink/zink_batch.c +++ b/src/gallium/drivers/zink/zink_batch.c @@ -337,7 +337,7 @@ submit_queue(void *data, int thread_index) .pNext = si.pNext, }; - if (bs->flush_res) { + if (bs->flush_res && zink_screen(bs->ctx->base.screen)->needs_mesa_flush_wsi) { mem_signal.memory = bs->flush_res->scanout_obj ? bs->flush_res->scanout_obj->mem : bs->flush_res->obj->mem; si.pNext = &mem_signal; } diff --git a/src/gallium/drivers/zink/zink_context.c b/src/gallium/drivers/zink/zink_context.c index 3c6a0555b53..9c358f3f6f6 100644 --- a/src/gallium/drivers/zink/zink_context.c +++ b/src/gallium/drivers/zink/zink_context.c @@ -1723,8 +1723,7 @@ zink_flush(struct pipe_context *pctx, zink_begin_render_pass(ctx, batch); zink_end_render_pass(ctx, batch); if (ctx->flush_res) { - if (zink_screen(pctx->screen)->needs_mesa_flush_wsi) - batch->state->flush_res = ctx->flush_res; + batch->state->flush_res = ctx->flush_res; ctx->flush_res = NULL; } }