Mesa (master): nv50: disable dedicated ubo upload method

Ilia Mirkin imirkin at kemper.freedesktop.org
Fri Jul 4 00:13:38 UTC 2014


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

Author: Ilia Mirkin <imirkin at alum.mit.edu>
Date:   Mon Jun 30 22:43:39 2014 -0400

nv50: disable dedicated ubo upload method

The hardware allows multiple simultaneous renders with the same
memory-backed constbufs but with each invocation having different
values. However in order for that to work, the data has to be streamed
in via the right constbuf slot. We weren't doing that for UBOs.

Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
Cc: "10.2 10.1" <mesa-stable at lists.freedesktop.org>

---

 src/gallium/drivers/nouveau/nv50/nv50_context.c |    7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/src/gallium/drivers/nouveau/nv50/nv50_context.c b/src/gallium/drivers/nouveau/nv50/nv50_context.c
index f844592..3f3a888 100644
--- a/src/gallium/drivers/nouveau/nv50/nv50_context.c
+++ b/src/gallium/drivers/nouveau/nv50/nv50_context.c
@@ -253,7 +253,14 @@ nv50_create(struct pipe_screen *pscreen, void *priv)
    nv50->base.screen    = &screen->base;
    nv50->base.copy_data = nv50_m2mf_copy_linear;
    nv50->base.push_data = nv50_sifc_linear_u8;
+   /* FIXME: Make it possible to use this again. The problem is that there is
+    * some clever logic in the card that allows for multiple renders to happen
+    * when there are only constbuf changes. However that relies on the
+    * constbuf updates happening to the right constbuf slots. Currently
+    * implementation just makes it go through a separate slot which doesn't
+    * properly update the right constbuf data.
    nv50->base.push_cb   = nv50_cb_push;
+    */
 
    nv50->screen = screen;
    pipe->screen = pscreen;




More information about the mesa-commit mailing list