hasvk: ensure we reapply always pipeline dynamic state in runtime state

Backport of 24631d308c

Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26341>
This commit is contained in:
Iván Briano 2023-11-22 16:44:42 -08:00 committed by Marge Bot
parent 2d98236dd5
commit 6f9be9a2a0

View file

@ -298,6 +298,11 @@ void anv_CmdBindPipeline(
case VK_PIPELINE_BIND_POINT_GRAPHICS: {
struct anv_graphics_pipeline *gfx_pipeline =
anv_pipeline_to_graphics(pipeline);
/* Apply the non dynamic state from the pipeline */
vk_cmd_set_dynamic_graphics_state(&cmd_buffer->vk,
&gfx_pipeline->dynamic_state);
if (cmd_buffer->state.gfx.pipeline == gfx_pipeline)
return;
@ -309,10 +314,6 @@ void anv_CmdBindPipeline(
set_dirty_for_bind_map(cmd_buffer, stage,
&gfx_pipeline->shaders[stage]->bind_map);
}
/* Apply the non dynamic state from the pipeline */
vk_cmd_set_dynamic_graphics_state(&cmd_buffer->vk,
&gfx_pipeline->dynamic_state);
break;
}