From 22fc869187e67e7c2a98529572ba22b7d4e667e6 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Thu, 8 Oct 2020 15:19:02 -0400 Subject: [PATCH] zink: set VK_IMAGE_LAYOUT_PRESENT_SRC_KHR on fb resources at eof flush this should maybe fix garbled images on amd? Reviewed-by: Dave Airlie Part-of: --- src/gallium/drivers/zink/zink_context.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/gallium/drivers/zink/zink_context.c b/src/gallium/drivers/zink/zink_context.c index effeb05..684939d 100644 --- a/src/gallium/drivers/zink/zink_context.c +++ b/src/gallium/drivers/zink/zink_context.c @@ -1361,6 +1361,14 @@ zink_flush(struct pipe_context *pctx, if (deferred) batch->fence->deferred_ctx = pctx; else if (batch->has_work) { + if (flags & PIPE_FLUSH_END_OF_FRAME) { + if (ctx->fb_state.nr_cbufs) + zink_end_render_pass(ctx, batch); + for (int i = 0; i < ctx->fb_state.nr_cbufs; i++) + zink_resource_image_barrier(ctx, batch, + ctx->fb_state.cbufs[i] ? zink_resource(ctx->fb_state.cbufs[i]->texture) : NULL, + VK_IMAGE_LAYOUT_PRESENT_SRC_KHR, 0, 0); + } flush_batch(ctx); if (zink_screen(pctx->screen)->info.have_EXT_transform_feedback && ctx->num_so_targets) -- 2.7.4