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

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Thu Aug 30 12:59:03 UTC 2018


Module: Mesa
Branch: staging/18.2
Commit: 452f21e6de89de511b108f3613b6866c28d3ffca
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=452f21e6de89de511b108f3613b6866c28d3ffca

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 ea5ad55be5..0f825000ff 100644
--- a/src/mesa/drivers/dri/i965/genX_state_upload.c
+++ b/src/mesa/drivers/dri/i965/genX_state_upload.c
@@ -2806,7 +2806,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