Message ID | 20200910171336.3161995-1-iii@linux.ibm.com |
---|---|
State | Accepted |
Delegated to: | BPF Maintainers |
Headers | show |
Series | [bpf-next] selftests/bpf: Fix test_ksyms on non-SMP kernels | expand |
On Thu, Sep 10, 2020 at 10:13 AM Ilya Leoshkevich <iii@linux.ibm.com> wrote: > > On non-SMP kernels __per_cpu_start is not 0, so look it up in kallsyms. > > Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com> > --- Acked-by: Andrii Nakryiko <andriin@fb.com> > tools/testing/selftests/bpf/prog_tests/ksyms.c | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/tools/testing/selftests/bpf/prog_tests/ksyms.c b/tools/testing/selftests/bpf/prog_tests/ksyms.c > index e3d6777226a8..b771804b2342 100644 > --- a/tools/testing/selftests/bpf/prog_tests/ksyms.c > +++ b/tools/testing/selftests/bpf/prog_tests/ksyms.c > @@ -32,6 +32,7 @@ static __u64 kallsyms_find(const char *sym) > > void test_ksyms(void) > { > + __u64 per_cpu_start_addr = kallsyms_find("__per_cpu_start"); > __u64 link_fops_addr = kallsyms_find("bpf_link_fops"); > const char *btf_path = "/sys/kernel/btf/vmlinux"; > struct test_ksyms *skel; > @@ -63,8 +64,9 @@ void test_ksyms(void) > "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 != 0, "__per_cpu_start", > - "got %llu, exp %llu\n", data->out__per_cpu_start, (__u64)0); > + 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); > > cleanup: > test_ksyms__destroy(skel); > -- > 2.25.4 >
On Thu, Sep 10, 2020 at 1:01 PM Andrii Nakryiko <andrii.nakryiko@gmail.com> wrote: > > On Thu, Sep 10, 2020 at 10:13 AM Ilya Leoshkevich <iii@linux.ibm.com> wrote: > > > > On non-SMP kernels __per_cpu_start is not 0, so look it up in kallsyms. > > > > Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com> > > --- > > Acked-by: Andrii Nakryiko <andriin@fb.com> Applied. Thanks
diff --git a/tools/testing/selftests/bpf/prog_tests/ksyms.c b/tools/testing/selftests/bpf/prog_tests/ksyms.c index e3d6777226a8..b771804b2342 100644 --- a/tools/testing/selftests/bpf/prog_tests/ksyms.c +++ b/tools/testing/selftests/bpf/prog_tests/ksyms.c @@ -32,6 +32,7 @@ static __u64 kallsyms_find(const char *sym) void test_ksyms(void) { + __u64 per_cpu_start_addr = kallsyms_find("__per_cpu_start"); __u64 link_fops_addr = kallsyms_find("bpf_link_fops"); const char *btf_path = "/sys/kernel/btf/vmlinux"; struct test_ksyms *skel; @@ -63,8 +64,9 @@ void test_ksyms(void) "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 != 0, "__per_cpu_start", - "got %llu, exp %llu\n", data->out__per_cpu_start, (__u64)0); + 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); cleanup: test_ksyms__destroy(skel);
On non-SMP kernels __per_cpu_start is not 0, so look it up in kallsyms. Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com> --- tools/testing/selftests/bpf/prog_tests/ksyms.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)