[PATCH 1/6] perf utils: Add perf_quiet_option()

From: Namhyung Kim
Date: Fri Feb 17 2017 - 03:17:55 EST


The perf_quiet_option() is to suppress all messages. It's intended to
be called just after parsing options.

Signed-off-by: Namhyung Kim <namhyung@xxxxxxxxxx>
---
tools/perf/util/debug.c | 17 +++++++++++++++++
tools/perf/util/debug.h | 1 +
2 files changed, 18 insertions(+)

diff --git a/tools/perf/util/debug.c b/tools/perf/util/debug.c
index c1838b643108..03eb81f30d0d 100644
--- a/tools/perf/util/debug.c
+++ b/tools/perf/util/debug.c
@@ -203,11 +203,28 @@ int perf_debug_option(const char *str)
v = (v < 0) || (v > 10) ? 0 : v;
}

+ if (quiet)
+ v = -1;
+
*var->ptr = v;
free(s);
return 0;
}

+int perf_quiet_option(void)
+{
+ struct debug_variable *var = &debug_variables[0];
+
+ /* disable all debug messages */
+ while (var->name) {
+ *var->ptr = -1;
+ var++;
+ }
+
+ quiet = true;
+ return 0;
+}
+
#define DEBUG_WRAPPER(__n, __l) \
static int pr_ ## __n ## _wrapper(const char *fmt, ...) \
{ \
diff --git a/tools/perf/util/debug.h b/tools/perf/util/debug.h
index d242adc3d5a2..98832f5531d3 100644
--- a/tools/perf/util/debug.h
+++ b/tools/perf/util/debug.h
@@ -54,5 +54,6 @@ int veprintf(int level, int var, const char *fmt, va_list args);

int perf_debug_option(const char *str);
void perf_debug_setup(void);
+int perf_quiet_option(void);

#endif /* __PERF_DEBUG_H */
--
2.11.1