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

Author: Luca Barbieri <l...@luca-barbieri.com>
Date:   Wed Mar 17 20:31:56 2010 +0100

nvfx: stop incessantly spewing debug messages on the terminal

Currently we are continuously spewing messages about these variables
since we call debug_get_bool_option everytime we want to check their value.

This is annoying, slows things down due to terminal rerendering
and obscures useful messages.

This patch only calls debug_get_bool_option once and caches the result in a
static variable.

---

 src/gallium/drivers/nvfx/nvfx_miptree.c  |    5 ++++-
 src/gallium/drivers/nvfx/nvfx_transfer.c |    6 ++++--
 2 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/src/gallium/drivers/nvfx/nvfx_miptree.c 
b/src/gallium/drivers/nvfx/nvfx_miptree.c
index 0f5ed61..9de2517 100644
--- a/src/gallium/drivers/nvfx/nvfx_miptree.c
+++ b/src/gallium/drivers/nvfx/nvfx_miptree.c
@@ -67,6 +67,9 @@ nvfx_miptree_create(struct pipe_screen *pscreen, const struct 
pipe_texture *pt)
        struct nvfx_miptree *mt;
        unsigned buf_usage = PIPE_BUFFER_USAGE_PIXEL |
                             NOUVEAU_BUFFER_USAGE_TEXTURE;
+       static int no_swizzle = -1;
+       if(no_swizzle < 0)
+               no_swizzle = debug_get_bool_option("NOUVEAU_NO_SWIZZLE", FALSE);
 
        mt = MALLOC(sizeof(struct nvfx_miptree));
        if (!mt)
@@ -106,7 +109,7 @@ nvfx_miptree_create(struct pipe_screen *pscreen, const 
struct pipe_texture *pt)
                case PIPE_FORMAT_B8G8R8X8_UNORM:
                case PIPE_FORMAT_R16_SNORM:
                {
-                       if (debug_get_bool_option("NOUVEAU_NO_SWIZZLE", FALSE))
+                       if (no_swizzle)
                                mt->base.tex_usage |= 
NOUVEAU_TEXTURE_USAGE_LINEAR;
                        break;
                }
diff --git a/src/gallium/drivers/nvfx/nvfx_transfer.c 
b/src/gallium/drivers/nvfx/nvfx_transfer.c
index 409b354..c81b44a 100644
--- a/src/gallium/drivers/nvfx/nvfx_transfer.c
+++ b/src/gallium/drivers/nvfx/nvfx_transfer.c
@@ -42,6 +42,9 @@ nvfx_transfer_new(struct pipe_context *pcontext, struct 
pipe_texture *pt,
        struct nvfx_miptree *mt = (struct nvfx_miptree *)pt;
        struct nvfx_transfer *tx;
        struct pipe_texture tx_tex_template, *tx_tex;
+       static int no_transfer = -1;
+       if(no_transfer < 0)
+               no_transfer = debug_get_bool_option("NOUVEAU_NO_TRANSFER", 
TRUE/*XXX:FALSE*/);
 
        tx = CALLOC_STRUCT(nvfx_transfer);
        if (!tx)
@@ -59,8 +62,7 @@ nvfx_transfer_new(struct pipe_context *pcontext, struct 
pipe_texture *pt,
        tx->base.zslice = zslice;
 
        /* Direct access to texture */
-       if ((pt->tex_usage & PIPE_TEXTURE_USAGE_DYNAMIC ||
-            debug_get_bool_option("NOUVEAU_NO_TRANSFER", TRUE/*XXX:FALSE*/)) &&
+       if ((pt->tex_usage & PIPE_TEXTURE_USAGE_DYNAMIC || no_transfer) &&
            pt->tex_usage & NOUVEAU_TEXTURE_USAGE_LINEAR)
        {
                tx->direct = true;

_______________________________________________
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to