selftests/bpf: Print log buffer for exceptions test only on failure
authorKumar Kartikeya Dwivedi <memxor@gmail.com>
Mon, 18 Sep 2023 15:52:31 +0000 (17:52 +0200)
committerAlexei Starovoitov <ast@kernel.org>
Tue, 19 Sep 2023 09:07:36 +0000 (02:07 -0700)
Alexei reported seeing log messages for some test cases even though we
just wanted to match the error string from the verifier. Move the
printing of the log buffer to a guarded condition so that we only print
it when we fail to match on the expected string in the log buffer,
preventing unneeded output when running the test.

Reported-by: Alexei Starovoitov <ast@kernel.org>
Fixes: d2a93715bfb0 ("selftests/bpf: Add tests for BPF exceptions")
Signed-off-by: Kumar Kartikeya Dwivedi <memxor@gmail.com>
Link: https://lore.kernel.org/r/20230918155233.297024-2-memxor@gmail.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
tools/testing/selftests/bpf/prog_tests/exceptions.c

index 5663e427dc00daf0204e24050452fb0ec8d0d7d3..516f4a13013cca26f9e416a75e6774b3090f64ea 100644 (file)
@@ -103,9 +103,10 @@ static void test_exceptions_success(void)
                        goto done;                                                \
                }                                                                 \
                if (load_ret != 0) {                                              \
-                       printf("%s\n", log_buf);                                  \
-                       if (!ASSERT_OK_PTR(strstr(log_buf, msg), "strstr"))       \
+                       if (!ASSERT_OK_PTR(strstr(log_buf, msg), "strstr")) {     \
+                               printf("%s\n", log_buf);                          \
                                goto done;                                        \
+                       }                                                         \
                }                                                                 \
                if (!load_ret && attach_err) {                                    \
                        if (!ASSERT_ERR_PTR(link = bpf_program__attach(prog), "attach err")) \