Mesa (staging/18.1): i965/gen6/xfb: handle case where transform feedback is not active

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Thu Aug 30 15:34:19 UTC 2018


Module: Mesa
Branch: staging/18.1
Commit: 8aba522f49de156b96b250908b3a782933ea954d
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=8aba522f49de156b96b250908b3a782933ea954d

Author: Andrii Simiklit <asimiklit.work at gmail.com>
Date:   Wed Aug 15 18:20:32 2018 +0300

i965/gen6/xfb: handle case where transform feedback is not active

When the SVBI Payload Enable is false I guess the register R1.4
which contains the Maximum Streamed Vertex Buffer Index is filled by zero
and GS stops to write transform feedback when the transform feedback
is not active.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=107579
Signed-off-by: Andrii Simiklit <andrii.simiklit at globallogic.com>
Reviewed-by: Samuel Iglesias Gonsálvez <siglesias at igalia.com>
(cherry picked from commit 1b0df8a46020cc88afeaa4decb42a782ab168afb)

---

 src/mesa/drivers/dri/i965/genX_state_upload.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/mesa/drivers/dri/i965/genX_state_upload.c b/src/mesa/drivers/dri/i965/genX_state_upload.c
index 1a32c60ae3..d47940b8c8 100644
--- a/src/mesa/drivers/dri/i965/genX_state_upload.c
+++ b/src/mesa/drivers/dri/i965/genX_state_upload.c
@@ -2696,7 +2696,7 @@ genX(upload_gs_state)(struct brw_context *brw)
 #if GEN_GEN < 7
          gs.SOStatisticsEnable = true;
          if (gs_prog->info.has_transform_feedback_varyings)
-            gs.SVBIPayloadEnable = true;
+            gs.SVBIPayloadEnable = _mesa_is_xfb_active_and_unpaused(ctx);
 
          /* GEN6_GS_SPF_MODE and GEN6_GS_VECTOR_MASK_ENABLE are enabled as it
           * was previously done for gen6.




More information about the mesa-commit mailing list