Re: [PATCH bpf-next] selftests/bpf: Fix test_ksyms on non-SMP kernels

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Sep 10, 2020 at 10:13 AM Ilya Leoshkevich <iii@xxxxxxxxxxxxx> wrote:
>
> On non-SMP kernels __per_cpu_start is not 0, so look it up in kallsyms.
>
> Signed-off-by: Ilya Leoshkevich <iii@xxxxxxxxxxxxx>
> ---

Acked-by: Andrii Nakryiko <andriin@xxxxxx>

>  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
>



[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux