selftests/bpf: Replace CHECK with ASSERT macros for ksyms test
authorYonghong Song <yonghong.song@linux.dev>
Tue, 26 Mar 2024 04:14:48 +0000 (21:14 -0700)
committerAlexei Starovoitov <ast@kernel.org>
Fri, 29 Mar 2024 01:31:41 +0000 (18:31 -0700)
Replace CHECK with ASSERT macros for ksyms tests.
This test failed earlier with clang lto kernel, but the
issue is gone with latest code base. But replacing
CHECK with ASSERT still improves code as ASSERT is
preferred in selftests.

Signed-off-by: Yonghong Song <yonghong.song@linux.dev>
Link: https://lore.kernel.org/r/20240326041448.1197812-1-yonghong.song@linux.dev
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
tools/testing/selftests/bpf/prog_tests/ksyms.c

index b295969..dc7aab5 100644 (file)
@@ -5,8 +5,6 @@
 #include "test_ksyms.skel.h"
 #include <sys/stat.h>
 
-static int duration;
-
 void test_ksyms(void)
 {
        const char *btf_path = "/sys/kernel/btf/vmlinux";
@@ -18,43 +16,37 @@ void test_ksyms(void)
        int err;
 
        err = kallsyms_find("bpf_link_fops", &link_fops_addr);
-       if (CHECK(err == -EINVAL, "kallsyms_fopen", "failed to open: %d\n", errno))
+       if (!ASSERT_NEQ(err, -EINVAL, "bpf_link_fops: kallsyms_fopen"))
                return;
-       if (CHECK(err == -ENOENT, "ksym_find", "symbol 'bpf_link_fops' not found\n"))
+       if (!ASSERT_NEQ(err, -ENOENT, "bpf_link_fops: ksym_find"))
                return;
 
        err = kallsyms_find("__per_cpu_start", &per_cpu_start_addr);
-       if (CHECK(err == -EINVAL, "kallsyms_fopen", "failed to open: %d\n", errno))
+       if (!ASSERT_NEQ(err, -EINVAL, "__per_cpu_start: kallsyms_fopen"))
                return;
-       if (CHECK(err == -ENOENT, "ksym_find", "symbol 'per_cpu_start' not found\n"))
+       if (!ASSERT_NEQ(err, -ENOENT, "__per_cpu_start: ksym_find"))
                return;
 
-       if (CHECK(stat(btf_path, &st), "stat_btf", "err %d\n", errno))
+       if (!ASSERT_OK(stat(btf_path, &st), "stat_btf"))
                return;
        btf_size = st.st_size;
 
        skel = test_ksyms__open_and_load();
-       if (CHECK(!skel, "skel_open", "failed to open and load skeleton\n"))
+       if (!ASSERT_OK_PTR(skel, "test_ksyms__open_and_load"))
                return;
 
        err = test_ksyms__attach(skel);
-       if (CHECK(err, "skel_attach", "skeleton attach failed: %d\n", err))
+       if (!ASSERT_OK(err, "test_ksyms__attach"))
                goto cleanup;
 
        /* trigger tracepoint */
        usleep(1);
 
        data = skel->data;
-       CHECK(data->out__bpf_link_fops != link_fops_addr, "bpf_link_fops",
-             "got 0x%llx, exp 0x%llx\n",
-             data->out__bpf_link_fops, link_fops_addr);
-       CHECK(data->out__bpf_link_fops1 != 0, "bpf_link_fops1",
-             "got %llu, exp %llu\n", data->out__bpf_link_fops1, (__u64)0);
-       CHECK(data->out__btf_size != btf_size, "btf_size",
-             "got %llu, exp %llu\n", data->out__btf_size, btf_size);
-       CHECK(data->out__per_cpu_start != per_cpu_start_addr, "__per_cpu_start",
-             "got %llu, exp %llu\n", data->out__per_cpu_start,
-             per_cpu_start_addr);
+       ASSERT_EQ(data->out__bpf_link_fops, link_fops_addr, "bpf_link_fops");
+       ASSERT_EQ(data->out__bpf_link_fops1, 0, "bpf_link_fops1");
+       ASSERT_EQ(data->out__btf_size, btf_size, "btf_size");
+       ASSERT_EQ(data->out__per_cpu_start, per_cpu_start_addr, "__per_cpu_start");
 
 cleanup:
        test_ksyms__destroy(skel);