From 6029e2d7c2d7f181e9f6179eac76f2a15babf6b7 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Tue, 8 Aug 2023 16:57:07 -0400 Subject: [PATCH] zink: explicitly set non-optimal last_vertex_stage shader key on ctx create this otherwise results in generated gs not having the flag set, which breaks various things cc: mesa-stable Reviewed-by: Dave Airlie Part-of: (cherry picked from commit ccc195c3a32535de20127c43d0644174af8eaf6b) --- .pick_status.json | 2 +- src/gallium/drivers/zink/zink_context.c | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.pick_status.json b/.pick_status.json index 8d340c092ae..c5048c0c386 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -49,7 +49,7 @@ "description": "zink: explicitly set non-optimal last_vertex_stage shader key on ctx create", "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 c5260d7b2ef..2d756ff6be0 100644 --- a/src/gallium/drivers/zink/zink_context.c +++ b/src/gallium/drivers/zink/zink_context.c @@ -4949,6 +4949,7 @@ zink_context_create(struct pipe_screen *pscreen, void *priv, unsigned flags) } zink_set_last_vertex_key(ctx)->last_vertex_stage = true; + ctx->gfx_pipeline_state.shader_keys.last_vertex.key.vs_base.last_vertex_stage = true; zink_set_tcs_key_patches(ctx, 1); if (!screen->optimal_keys) { ctx->gfx_pipeline_state.shader_keys.key[MESA_SHADER_VERTEX].size = sizeof(struct zink_vs_key_base);