mapi: Respect MESA_DEBUG=silent for no-op debug output.
We set this in deqp-runner runs to disable Mesa debug/debugoptimized builds printing to stderr for expected GL test behavior, and with the addition of dEQP-EGL mapi got very verbose. Move it to a call_once() too to avoid data races. Acked-by: Eric Engestrom <eric@engestrom.ch> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10240>
This commit is contained in:
parent
8a8e55d6a8
commit
c1352205ab
|
@ -25,9 +25,12 @@
|
||||||
* Chia-I Wu <olv@lunarg.com>
|
* Chia-I Wu <olv@lunarg.com>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include <stdbool.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
#include <string.h>
|
||||||
|
|
||||||
|
#include "c11/threads.h"
|
||||||
#include "table.h"
|
#include "table.h"
|
||||||
|
|
||||||
static nop_handler_proc nop_handler = NULL;
|
static nop_handler_proc nop_handler = NULL;
|
||||||
|
@ -38,6 +41,17 @@ table_set_noop_handler(nop_handler_proc func)
|
||||||
nop_handler = func;
|
nop_handler = func;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static bool log_noop;
|
||||||
|
|
||||||
|
static void check_debug_env(void)
|
||||||
|
{
|
||||||
|
const char *debug = getenv("MESA_DEBUG");
|
||||||
|
if (!debug)
|
||||||
|
debug = getenv("LIBGL_DEBUG");
|
||||||
|
if (debug && strcmp(debug, "silent") != 0)
|
||||||
|
log_noop = true;
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
noop_warn(const char *name)
|
noop_warn(const char *name)
|
||||||
{
|
{
|
||||||
|
@ -45,12 +59,10 @@ noop_warn(const char *name)
|
||||||
nop_handler(name);
|
nop_handler(name);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
static int debug = -1;
|
static once_flag flag = ONCE_FLAG_INIT;
|
||||||
|
call_once(&flag, check_debug_env);
|
||||||
if (debug < 0)
|
|
||||||
debug = (getenv("MESA_DEBUG") || getenv("LIBGL_DEBUG"));
|
|
||||||
|
|
||||||
if (debug)
|
if (log_noop)
|
||||||
fprintf(stderr, "%s is no-op\n", name);
|
fprintf(stderr, "%s is no-op\n", name);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue