Mesa (master): r300g/swtcl: unlock VBO after draw_flush

Marek Olšák mareko at kemper.freedesktop.org
Mon Sep 13 19:12:57 UTC 2010


Module: Mesa
Branch: master
Commit: 428dc6d7d2cf6a5da37a2ea7ce436cf521b009a2
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=428dc6d7d2cf6a5da37a2ea7ce436cf521b009a2

Author: Marek Olšák <maraeo at gmail.com>
Date:   Mon Sep 13 21:08:48 2010 +0200

r300g/swtcl: unlock VBO after draw_flush

https://bugs.freedesktop.org/show_bug.cgi?id=29901
https://bugs.freedesktop.org/show_bug.cgi?id=30132

---

 src/gallium/drivers/r300/r300_render.c |    5 +----
 1 files changed, 1 insertions(+), 4 deletions(-)

diff --git a/src/gallium/drivers/r300/r300_render.c b/src/gallium/drivers/r300/r300_render.c
index 6c4cd6c..177850d 100644
--- a/src/gallium/drivers/r300/r300_render.c
+++ b/src/gallium/drivers/r300/r300_render.c
@@ -754,11 +754,8 @@ static void r300_swtcl_draw_vbo(struct pipe_context* pipe,
 
     r300->draw_vbo_locked = TRUE;
     draw_vbo(r300->draw, info);
-    r300->draw_vbo_locked = FALSE;
-
-    /* XXX Not sure whether this is the best fix.
-     * It prevents CS from being rejected and weird assertion failures. */
     draw_flush(r300->draw);
+    r300->draw_vbo_locked = FALSE;
 
     for (i = 0; i < r300->vertex_buffer_count; i++) {
         if (r300->vertex_buffer[i].buffer) {




More information about the mesa-commit mailing list