summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNicolai Hähnle <[email protected]>2016-06-03 15:17:25 +0200
committerNicolai Hähnle <[email protected]>2016-06-06 21:43:18 +0200
commitec2b52e2d9d7114df6e6023eec5949c4c6a76d52 (patch)
tree2afa8bd662910968150300aaf27c1618a05d5fa1
parent0f916d4ca741ff544fa2da72c3b11c5ca64b8b74 (diff)
radeonsi: set descriptor dirty mask on shader buffer unbind
Found randomly while skimming the code. This might have caused VM faults in robustness tests. Cc: 12.0 <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
-rw-r--r--src/gallium/drivers/radeonsi/si_descriptors.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/gallium/drivers/radeonsi/si_descriptors.c b/src/gallium/drivers/radeonsi/si_descriptors.c
index baddc5f245c..f48ddb77aab 100644
--- a/src/gallium/drivers/radeonsi/si_descriptors.c
+++ b/src/gallium/drivers/radeonsi/si_descriptors.c
@@ -968,6 +968,7 @@ static void si_set_shader_buffers(struct pipe_context *ctx, unsigned shader,
pipe_resource_reference(&buffers->buffers[slot], NULL);
memset(desc, 0, sizeof(uint32_t) * 4);
buffers->desc.enabled_mask &= ~(1u << slot);
+ buffers->desc.dirty_mask |= 1u << slot;
continue;
}