mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-03 16:28:08 +02:00
iris: ensure mesh is disabled on context init
It turns out the hardware doesn't save the whole state on a context switch, as the kernel expects when it creates the golden context. For some HW units, only the state that was explicitly programmed will be part of it, so we need to make sure mesh shading is disabled on context creation, or we risk being context switched with an application that uses mesh, and when ours gets to run again, the mesh state won't be reset, and submitting a legacy 3D pipeline while the HW thinks mesh is enabled causes us to hang. Cc: 23.2 <mesa-stable> Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com> Reviewed-by: José Roberto de Souza <jose.souza@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24150>
This commit is contained in:
parent
f48aa460a2
commit
50d68f74b5
1 changed files with 5 additions and 0 deletions
|
|
@ -1339,6 +1339,11 @@ iris_init_render_context(struct iris_batch *batch)
|
|||
/* TODO: may need to set an offset for origin-UL framebuffers */
|
||||
iris_emit_cmd(batch, GENX(3DSTATE_POLY_STIPPLE_OFFSET), foo);
|
||||
|
||||
#if GFX_VERx10 >= 125
|
||||
iris_emit_cmd(batch, GENX(3DSTATE_MESH_CONTROL), foo);
|
||||
iris_emit_cmd(batch, GENX(3DSTATE_TASK_CONTROL), foo);
|
||||
#endif
|
||||
|
||||
iris_alloc_push_constants(batch);
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue