summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNicolai Hähnle <[email protected]>2016-11-28 20:30:41 +0100
committerEmil Velikov <[email protected]>2016-12-15 15:53:30 +0000
commitbc39170c3368196a400198787be0a723cde6f783 (patch)
tree792b0983191c046ece2edce3acbf582b9aef5402
parent4cc5e897b5eec42c0e3a80ee0dcbfe6ee6187ed1 (diff)
radeonsi: update all GSVS ring descriptors for new buffer allocations
Fixes GL45-CTS.gtf40.GL3Tests.transform_feedback3.transform_feedback3_geometry_instanced. Cc: [email protected] Reviewed-by: Edward O'Callaghan <[email protected]> Reviewed-by: Marek Olšák <[email protected]> (cherry picked from commit 7b5b3d63c5f33bbd49f4b11c282603baa9371c10)
-rw-r--r--src/gallium/drivers/radeonsi/si_state_shaders.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/gallium/drivers/radeonsi/si_state_shaders.c b/src/gallium/drivers/radeonsi/si_state_shaders.c
index 137a5d1c842..0bb60cbb0a3 100644
--- a/src/gallium/drivers/radeonsi/si_state_shaders.c
+++ b/src/gallium/drivers/radeonsi/si_state_shaders.c
@@ -1777,10 +1777,15 @@ static bool si_update_gs_ring_buffers(struct si_context *sctx)
sctx->esgs_ring, 0, sctx->esgs_ring->width0,
false, false, 0, 0, 0);
}
- if (sctx->gsvs_ring)
+ if (sctx->gsvs_ring) {
si_set_ring_buffer(&sctx->b.b, SI_VS_RING_GSVS,
sctx->gsvs_ring, 0, sctx->gsvs_ring->width0,
false, false, 0, 0, 0);
+
+ /* Also update SI_GS_RING_GSVSi descriptors. */
+ sctx->last_gsvs_itemsize = 0;
+ }
+
return true;
}