Re: [PATCH 5.4 007/102] libbpf: Fix call relocation offset calculation bug

From: Naresh Kamboju
Date: Fri Jan 24 2020 - 08:43:43 EST


<trim>
> Fixes: 48cca7e44f9f ("libbpf: add support for bpf_call")
> Reported-by: Alexei Starovoitov <ast@xxxxxxxxxx>
> Signed-off-by: Andrii Nakryiko <andriin@xxxxxx>
> Acked-by: Yonghong Song <yhs@xxxxxx>
> Signed-off-by: Alexei Starovoitov <ast@xxxxxxxxxx>
> Link: https://lore.kernel.org/bpf/20191119224447.3781271-1-andriin@xxxxxx
> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
>
> ---
> tools/lib/bpf/libbpf.c | 8 ++++++--
> tools/testing/selftests/bpf/progs/test_btf_haskv.c | 4 ++--
> tools/testing/selftests/bpf/progs/test_btf_newkv.c | 4 ++--
> tools/testing/selftests/bpf/progs/test_btf_nokv.c | 4 ++--
> 4 files changed, 12 insertions(+), 8 deletions(-)
>
> --- a/tools/lib/bpf/libbpf.c
> +++ b/tools/lib/bpf/libbpf.c
> @@ -1791,9 +1791,13 @@ bpf_program__collect_reloc(struct bpf_pr
> pr_warning("incorrect bpf_call opcode\n");
> return -LIBBPF_ERRNO__RELOC;
> }
> + if (sym.st_value % 8) {
> + pr_warn("bad call relo offset: %lu\n", sym.st_value);

Perf build failed on stable-rc 5.4 branch for arm, arm64, x86_64 and i386.

libbpf.c: In function 'bpf_program__collect_reloc':
libbpf.c:1795:5: error: implicit declaration of function 'pr_warn';
did you mean 'pr_warning'? [-Werror=implicit-function-declaration]
pr_warn("bad call relo offset: %lu\n", sym.st_value);
^~~~~~~
pr_warning
libbpf.c:1795:5: error: nested extern declaration of 'pr_warn'
[-Werror=nested-externs]
Makefile:653: arch/arm64/Makefile: No such file or directory
cc1: all warnings being treated as errors

build links,
https://ci.linaro.org/view/lkft/job/openembedded-lkft-linux-stable-rc-5.4/DISTRO=lkft,MACHINE=hikey,label=docker-lkft/69/consoleText
https://ci.linaro.org/view/lkft/job/openembedded-lkft-linux-stable-rc-5.4/DISTRO=lkft,MACHINE=intel-corei7-64,label=docker-lkft/69/consoleText