Mesa (master): radeonsi: mark ssbo and images descriptor pointers dirty at beginning of CS

Nicolai Hähnle nh at kemper.freedesktop.org
Thu Apr 14 21:29:28 UTC 2016


Module: Mesa
Branch: master
Commit: 8bd0f0df50235fc5c3c556b9e20cb0225580596a
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=8bd0f0df50235fc5c3c556b9e20cb0225580596a

Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
Date:   Wed Apr 13 12:17:28 2016 -0500

radeonsi: mark ssbo and images descriptor pointers dirty at beginning of CS

Without this, we were getting non-deterministic VM faults under high pressure.

Reviewed-by: Marek Olšák <marek.olsak at amd.com>

---

 src/gallium/drivers/radeonsi/si_descriptors.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/gallium/drivers/radeonsi/si_descriptors.c b/src/gallium/drivers/radeonsi/si_descriptors.c
index b5557d8..7fc1461 100644
--- a/src/gallium/drivers/radeonsi/si_descriptors.c
+++ b/src/gallium/drivers/radeonsi/si_descriptors.c
@@ -1192,7 +1192,9 @@ static void si_mark_shader_pointers_dirty(struct si_context *sctx,
 {
 	sctx->const_buffers[shader].desc.pointer_dirty = true;
 	sctx->rw_buffers[shader].desc.pointer_dirty = true;
+	sctx->shader_buffers[shader].desc.pointer_dirty = true;
 	sctx->samplers[shader].views.desc.pointer_dirty = true;
+	sctx->images[shader].desc.pointer_dirty = true;
 
 	if (shader == PIPE_SHADER_VERTEX)
 		sctx->vertex_buffers.pointer_dirty = true;




More information about the mesa-commit mailing list