From: Rob Herring <r...@kernel.org>

commit d3003d9e686890a1e9f0cc7c08aa02ef2953b1f0 upstream

Add __T_VERBOSE() so tests can add verbose output. The verbose output is
enabled with the '-v' command line option. Running 'make tests V=1' will
enable the '-v' option when running the tests.

It'll be used in the next patch, for a user space counter access test.

Signed-off-by: Rob Herring <r...@kernel.org>
Acked-by: Jiri Olsa <jo...@redhat.com>
Acked-by: Namhyung Kim <namhy...@kernel.org>
Cc: Catalin Marinas <catalin.mari...@arm.com>
Cc: Itaru Kitayama <itaru.kitay...@gmail.com>
Cc: Mark Rutland <mark.rutl...@arm.com>
Cc: Peter Zijlstra <pet...@infradead.org>
Cc: Will Deacon <w...@kernel.org>
Link: http://lore.kernel.org/lkml/20210414155412.3697605-3-r...@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <a...@redhat.com>
Signed-off-by: Adrian Zaharia <adrian.zaha...@windriver.com>
---
 tools/lib/perf/include/internal/tests.h | 32 +++++++++++++++++++++++++
 tools/lib/perf/tests/Makefile           |  6 +++--
 2 files changed, 36 insertions(+), 2 deletions(-)

diff --git a/tools/lib/perf/include/internal/tests.h 
b/tools/lib/perf/include/internal/tests.h
index 2093e8868a67..29425c2dabe1 100644
--- a/tools/lib/perf/include/internal/tests.h
+++ b/tools/lib/perf/include/internal/tests.h
@@ -3,11 +3,32 @@
 #define __LIBPERF_INTERNAL_TESTS_H
 
 #include <stdio.h>
+#include <unistd.h>
 
 int tests_failed;
+int tests_verbose;
+
+static inline int get_verbose(char **argv, int argc)
+{
+       int c;
+       int verbose = 0;
+
+       while ((c = getopt(argc, argv, "v")) != -1) {
+               switch (c)
+               {
+               case 'v':
+                       verbose = 1;
+                       break;
+               default:
+                       break;
+               }
+       }
+       return verbose;
+}
 
 #define __T_START                                      \
 do {                                                   \
+       tests_verbose = get_verbose(argv, argc);        \
        fprintf(stdout, "- running %s...", __FILE__);   \
        fflush(NULL);                                   \
        tests_failed = 0;                               \
@@ -30,4 +51,15 @@ do {
        }                                                                       
 \
 } while (0)
 
+#define __T_VERBOSE(...)                                               \
+do {                                                                   \
+       if (tests_verbose) {                                            \
+               if (tests_verbose == 1) {                               \
+                       fputc('\n', stderr);                            \
+                       tests_verbose++;                                \
+               }                                                       \
+               fprintf(stderr, ##__VA_ARGS__);                         \
+       }                                                               \
+} while (0)
+
 #endif /* __LIBPERF_INTERNAL_TESTS_H */
diff --git a/tools/lib/perf/tests/Makefile b/tools/lib/perf/tests/Makefile
index 96841775feaf..b536cc9a26dd 100644
--- a/tools/lib/perf/tests/Makefile
+++ b/tools/lib/perf/tests/Makefile
@@ -5,6 +5,8 @@ TESTS = test-cpumap test-threadmap test-evlist test-evsel
 TESTS_SO := $(addsuffix -so,$(TESTS))
 TESTS_A  := $(addsuffix -a,$(TESTS))
 
+TEST_ARGS := $(if $(V),-v)
+
 # Set compile option CFLAGS
 ifdef EXTRA_CFLAGS
   CFLAGS := $(EXTRA_CFLAGS)
@@ -28,9 +30,9 @@ all: $(TESTS_A) $(TESTS_SO)
 
 run:
        @echo "running static:"
-       @for i in $(TESTS_A); do ./$$i; done
+       @for i in $(TESTS_A); do ./$$i $(TEST_ARGS); done
        @echo "running dynamic:"
-       @for i in $(TESTS_SO); do LD_LIBRARY_PATH=../ ./$$i; done
+       @for i in $(TESTS_SO); do LD_LIBRARY_PATH=../ ./$$i $(TEST_ARGS); done
 
 clean:
        $(call QUIET_CLEAN, tests)$(RM) $(TESTS_A) $(TESTS_SO)
-- 
2.36.1

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#12032): 
https://lists.yoctoproject.org/g/linux-yocto/message/12032
Mute This Topic: https://lists.yoctoproject.org/mt/95765172/21656
Group Owner: linux-yocto+ow...@lists.yoctoproject.org
Unsubscribe: https://lists.yoctoproject.org/g/linux-yocto/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to