Mesa (main): anv: disable streamout before emitting mesh shading state

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri May 13 10:19:16 UTC 2022


Module: Mesa
Branch: main
Commit: aa1c128b54b31580367d97107660c11cb94e0b98
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=aa1c128b54b31580367d97107660c11cb94e0b98

Author: Marcin Ślusarz <marcin.slusarz at intel.com>
Date:   Wed Apr 27 16:05:44 2022 +0200

anv: disable streamout before emitting mesh shading state

Fixes tests which use secondary command buffers.

Fixes: ef04caea9b8 ("anv: Implement Mesh Shading pipeline")
Reviewed-by: Caio Oliveira <caio.oliveira at intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16493>

---

 src/intel/vulkan/genX_pipeline.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/src/intel/vulkan/genX_pipeline.c b/src/intel/vulkan/genX_pipeline.c
index 97df60eb999..f8d3c1628c8 100644
--- a/src/intel/vulkan/genX_pipeline.c
+++ b/src/intel/vulkan/genX_pipeline.c
@@ -2807,6 +2807,12 @@ genX(graphics_pipeline_create)(
 #endif
    } else {
       assert(anv_pipeline_is_mesh(pipeline));
+
+      /* BSpec 46303 forbids both 3DSTATE_MESH_CONTROL.MeshShaderEnable
+       * and 3DSTATE_STREAMOUT.SOFunctionEnable to be 1.
+       */
+      anv_batch_emit(&pipeline->base.batch, GENX(3DSTATE_STREAMOUT), so) {}
+
 #if GFX_VERx10 >= 125
       emit_task_state(pipeline);
       emit_mesh_state(pipeline);



More information about the mesa-commit mailing list