[Mesa-dev] [PATCH] svga: Remove unnecessary check for the pre flush bit for setting vertex buffers

Thomas Hellstrom thellstrom at vmware.com
Wed May 29 13:08:19 UTC 2019


From: Charmaine Lee <charmainel at vmware.com>

This fixes the missing rebind when the can_pre_flush bit
is not set and the vertex buffers are the same as what have been sent.

Cc: mesa-stable at lists.freedesktop.org
Reviewed-by: Neha Bhende <bhenden at vmware.com>
Signed-off-by: Charmaine Lee <charmainel at vmware.com>
Signed-off-by: Thomas Hellstrom <thellstrom at vmware.com>
---
 src/gallium/drivers/svga/svga_draw.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/gallium/drivers/svga/svga_draw.c b/src/gallium/drivers/svga/svga_draw.c
index 9e13ee8ce6d..b6c21a866fe 100644
--- a/src/gallium/drivers/svga/svga_draw.c
+++ b/src/gallium/drivers/svga/svga_draw.c
@@ -568,11 +568,11 @@ validate_vertex_buffers(struct svga_hwtnl *hwtnl)
          vbuffer_attrs[i].sid = 0;
       }
 
-      /* If we haven't yet emitted a drawing command or if any
-       * vertex buffer state is changing, issue that state now.
+      /* If any of the vertex buffer state has changed, issue
+       * the SetVertexBuffers command. Otherwise, we will just
+       * need to rebind the resources.
        */
-      if (((hwtnl->cmd.swc->hints & SVGA_HINT_FLAG_CAN_PRE_FLUSH) == 0) ||
-          vbuf_count != svga->state.hw_draw.num_vbuffers ||
+      if (vbuf_count != svga->state.hw_draw.num_vbuffers ||
           !vertex_buffers_equal(vbuf_count,
                                 vbuffer_attrs,
                                 vbuffers,
-- 
2.21.0



More information about the mesa-dev mailing list