selftests/bpf: Replace CHECK with ASSERT macros for ksyms test
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>
This commit is contained in:
parent
5da7fb0490
commit
cdfd9cc3ba
@ -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);
|
||||
|
Loading…
x
Reference in New Issue
Block a user