2022-04-07 18:29:31

by Stephen Rothwell

[permalink] [raw]
Subject: Re: [next] perf build failures: libbpf.c:10946:50: error: format '%li' expects argument of type 'long int *', but argument 4 has type 'size_t *' {aka 'unsigned int *'} [-Werror=format=]

Hi Naresh,

On Thu, 7 Apr 2022 15:46:53 +0530 Naresh Kamboju <[email protected]> wrote:
>
> perf build errors on i386 [1] on Linux next-20220407 [2]
>
> usdt.c:1181:5: error: "__x86_64__" is not defined, evaluates to 0
> [-Werror=undef]
> 1181 | #if __x86_64__
> | ^~~~~~~~~~
> usdt.c:1196:5: error: "__x86_64__" is not defined, evaluates to 0
> [-Werror=undef]
> 1196 | #if __x86_64__
> | ^~~~~~~~~~
> cc1: all warnings being treated as errors

Caused by commit

4c59e584d158 ("libbpf: Add x86-specific USDT arg spec parsing logic")

> CC /home/tuxbuild/.cache/tuxmake/builds/1/build/util/values.o
> CC /home/tuxbuild/.cache/tuxmake/builds/1/build/tests/backward-ring-buffer.o
> CC /home/tuxbuild/.cache/tuxmake/builds/1/build/tests/sdt.o
> CC /home/tuxbuild/.cache/tuxmake/builds/1/build/tests/is_printable_array.o
> CC /home/tuxbuild/.cache/tuxmake/builds/1/build/util/debug.o
> CC /home/tuxbuild/.cache/tuxmake/builds/1/build/util/fncache.o
> CC /home/tuxbuild/.cache/tuxmake/builds/1/build/tests/bitmap.o
> CC /home/tuxbuild/.cache/tuxmake/builds/1/build/util/machine.o
> libbpf.c: In function 'attach_uprobe':
> libbpf.c:10946:50: error: format '%li' expects argument of type 'long
> int *', but argument 4 has type 'size_t *' {aka 'unsigned int *'}
> [-Werror=format=]
> 10946 | n = sscanf(func_name, "%m[a-zA-Z0-9_.]+%li", &func, &offset);
> | ~~^ ~~~~~~~
> | | |
> | long int *
> size_t * {aka unsigned int *}
> | %i
> cc1: all warnings being treated as errors

Caused by commit

39f8dc43b7a0 ("libbpf: Add auto-attach for uprobes based on section name")

> metadata:
> git_ref: master
> git_repo: https://gitlab.com/Linaro/lkft/mirrors/next/linux-next
> git_sha: 2e9a9857569ec27e64d2ddd01294bbe3c736acb1
> git_describe: next-20220407
> kernel-config: https://builds.tuxbuild.com/27SL0lCnWoPP04Jn8zKQ5nEEX7i/config
> target_arch: i386
>
> Reported-by: Linux Kernel Functional Testing <[email protected]>
>
> --
> Linaro LKFT
> https://lkft.linaro.org
>
>
> [1] https://builds.tuxbuild.com/27SL0lCnWoPP04Jn8zKQ5nEEX7i/
> [2] https://gitlab.com/Linaro/lkft/mirrors/next/linux-next/-/jobs/2302706510

--
Cheers,
Stephen Rothwell


Attachments:
(No filename) (499.00 B)
OpenPGP digital signature

2022-04-07 20:44:20

by Andrii Nakryiko

[permalink] [raw]
Subject: Re: [next] perf build failures: libbpf.c:10946:50: error: format '%li' expects argument of type 'long int *', but argument 4 has type 'size_t *' {aka 'unsigned int *'} [-Werror=format=]

On Thu, Apr 7, 2022 at 5:23 AM Stephen Rothwell <[email protected]> wrote:
>
> Hi Naresh,
>
> On Thu, 7 Apr 2022 15:46:53 +0530 Naresh Kamboju <[email protected]> wrote:
> >
> > perf build errors on i386 [1] on Linux next-20220407 [2]
> >
> > usdt.c:1181:5: error: "__x86_64__" is not defined, evaluates to 0
> > [-Werror=undef]
> > 1181 | #if __x86_64__
> > | ^~~~~~~~~~
> > usdt.c:1196:5: error: "__x86_64__" is not defined, evaluates to 0
> > [-Werror=undef]
> > 1196 | #if __x86_64__
> > | ^~~~~~~~~~
> > cc1: all warnings being treated as errors
>
> Caused by commit
>
> 4c59e584d158 ("libbpf: Add x86-specific USDT arg spec parsing logic")
>
> > CC /home/tuxbuild/.cache/tuxmake/builds/1/build/util/values.o
> > CC /home/tuxbuild/.cache/tuxmake/builds/1/build/tests/backward-ring-buffer.o
> > CC /home/tuxbuild/.cache/tuxmake/builds/1/build/tests/sdt.o
> > CC /home/tuxbuild/.cache/tuxmake/builds/1/build/tests/is_printable_array.o
> > CC /home/tuxbuild/.cache/tuxmake/builds/1/build/util/debug.o
> > CC /home/tuxbuild/.cache/tuxmake/builds/1/build/util/fncache.o
> > CC /home/tuxbuild/.cache/tuxmake/builds/1/build/tests/bitmap.o
> > CC /home/tuxbuild/.cache/tuxmake/builds/1/build/util/machine.o
> > libbpf.c: In function 'attach_uprobe':
> > libbpf.c:10946:50: error: format '%li' expects argument of type 'long
> > int *', but argument 4 has type 'size_t *' {aka 'unsigned int *'}
> > [-Werror=format=]
> > 10946 | n = sscanf(func_name, "%m[a-zA-Z0-9_.]+%li", &func, &offset);
> > | ~~^ ~~~~~~~
> > | | |
> > | long int *
> > size_t * {aka unsigned int *}
> > | %i
> > cc1: all warnings being treated as errors
>
> Caused by commit
>
> 39f8dc43b7a0 ("libbpf: Add auto-attach for uprobes based on section name")
>

My bad, I'll fix both issues in bpf-next and will send a fix today.
Thanks for letting me know!

> > metadata:
> > git_ref: master
> > git_repo: https://gitlab.com/Linaro/lkft/mirrors/next/linux-next
> > git_sha: 2e9a9857569ec27e64d2ddd01294bbe3c736acb1
> > git_describe: next-20220407
> > kernel-config: https://builds.tuxbuild.com/27SL0lCnWoPP04Jn8zKQ5nEEX7i/config
> > target_arch: i386
> >
> > Reported-by: Linux Kernel Functional Testing <[email protected]>
> >
> > --
> > Linaro LKFT
> > https://lkft.linaro.org
> >
> >
> > [1] https://builds.tuxbuild.com/27SL0lCnWoPP04Jn8zKQ5nEEX7i/
> > [2] https://gitlab.com/Linaro/lkft/mirrors/next/linux-next/-/jobs/2302706510
>
> --
> Cheers,
> Stephen Rothwell