zink: invalidate pipeline hash on more changes

some cases were missed here, causing an assert to trigger

Fixes: 1185b3f32d "zink: pre-hash gfx-pipeline-state"

Reviewed-by: Antonio Caggiano <antonio.caggiano@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6262>
This commit is contained in:
Mike Blumenkrantz 2020-08-10 14:49:58 -04:00 committed by Marge Bot
parent 65d7172d17
commit f024bc8314
2 changed files with 4 additions and 0 deletions

View File

@ -321,6 +321,7 @@ zink_set_vertex_buffers(struct pipe_context *pctx,
res->needs_xfb_barrier = false;
}
}
ctx->gfx_pipeline_state.hash = 0;
}
util_set_vertex_buffers_mask(ctx->buffers, &ctx->buffers_enabled_mask,
@ -632,6 +633,7 @@ zink_set_sample_mask(struct pipe_context *pctx, unsigned sample_mask)
{
struct zink_context *ctx = zink_context(pctx);
ctx->gfx_pipeline_state.sample_mask = sample_mask;
ctx->gfx_pipeline_state.hash = 0;
}
static VkAccessFlags

View File

@ -234,6 +234,8 @@ zink_draw_vbo(struct pipe_context *pctx,
if (!gfx_program)
return;
if (ctx->gfx_pipeline_state.primitive_restart != !!dinfo->primitive_restart)
ctx->gfx_pipeline_state.hash = 0;
ctx->gfx_pipeline_state.primitive_restart = !!dinfo->primitive_restart;
VkPipeline pipeline = zink_get_gfx_pipeline(screen, gfx_program,