From a1a71c08579bb52928a584a103332c2d5beb97d0 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Thu, 11 May 2023 10:29:00 -0400 Subject: [PATCH] zink: stop swizzling conditional render during batch flush conditional render is only supposed to be enabled during renderpasses, and this ends up doing mismatched start/stop in and out of renderpasses affects: GTF-GL46.gtf30.GL3Tests.conditional_render* cc: mesa-stable Part-of: (cherry picked from commit 6aa9e95021c79f22ec9557035226563b017e796e) --- .pick_status.json | 2 +- src/gallium/drivers/zink/zink_context.c | 4 ---- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index ad3c9cad2ea..de9509ae057 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -3352,7 +3352,7 @@ "description": "zink: stop swizzling conditional render during batch flush", "nominated": true, "nomination_type": 0, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": null }, diff --git a/src/gallium/drivers/zink/zink_context.c b/src/gallium/drivers/zink/zink_context.c index 8cf38be5dfb..f72d50e32e1 100644 --- a/src/gallium/drivers/zink/zink_context.c +++ b/src/gallium/drivers/zink/zink_context.c @@ -3201,8 +3201,6 @@ flush_batch(struct zink_context *ctx, bool sync) if (ctx->clears_enabled) /* start rp to do all the clears */ zink_batch_rp(ctx); - bool conditional_render_active = ctx->render_condition.active; - zink_stop_conditional_render(ctx); zink_batch_no_rp_safe(ctx); zink_end_batch(ctx, batch); ctx->deferred_fence = NULL; @@ -3231,8 +3229,6 @@ flush_batch(struct zink_context *ctx, bool sync) VKCTX(CmdSetPatchControlPointsEXT)(ctx->batch.state->cmdbuf, ctx->gfx_pipeline_state.dyn_state2.vertices_per_patch); VKCTX(CmdSetPatchControlPointsEXT)(ctx->batch.state->barrier_cmdbuf, 1); } - if (conditional_render_active) - zink_start_conditional_render(ctx); reapply_color_write(ctx); update_layered_rendering_state(ctx); tc_renderpass_info_reset(&ctx->dynamic_fb.tc_info);