From f79163d200d800c4f25b1615a7d071dce7f7a066 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Tue, 20 Aug 2024 13:54:25 -0400 Subject: [PATCH] zink: don't skip cbuf store ops if resolve is set inlined resolve ops are still somehow slower than explicit ones, so the data has to be written out for the resolve cc: mesa-stable Acked-by: Dave Airlie Part-of: (cherry picked from commit 38f4501a5cbd65e663b78492bb69ccec9726e3f5) --- .pick_status.json | 2 +- src/gallium/drivers/zink/zink_context.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index e435ed7f1c7..53859b2109a 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -74,7 +74,7 @@ "description": "zink: don't skip cbuf store ops if resolve is set", "nominated": true, "nomination_type": 0, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": null, "notes": null diff --git a/src/gallium/drivers/zink/zink_context.c b/src/gallium/drivers/zink/zink_context.c index fc3ff90d76e..4885b24b6f7 100644 --- a/src/gallium/drivers/zink/zink_context.c +++ b/src/gallium/drivers/zink/zink_context.c @@ -2754,7 +2754,7 @@ begin_rendering(struct zink_context *ctx, bool check_msaa_expand) else ctx->dynamic_fb.attachments[i].loadOp = VK_ATTACHMENT_LOAD_OP_LOAD; if (use_tc_info) { - if (ctx->dynamic_fb.tc_info.cbuf_invalidate & BITFIELD_BIT(i)) + if (!ctx->dynamic_fb.tc_info.has_resolve && ctx->dynamic_fb.tc_info.cbuf_invalidate & BITFIELD_BIT(i)) ctx->dynamic_fb.attachments[i].storeOp = VK_ATTACHMENT_STORE_OP_DONT_CARE; else ctx->dynamic_fb.attachments[i].storeOp = VK_ATTACHMENT_STORE_OP_STORE;