Re: perf: util/annotate.c:1752:9: error: too few arguments to function 'init_disassemble_info'

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

 



On Mon, Jul 18, 2022 at 10:45 AM Naresh Kamboju
<naresh.kamboju@xxxxxxxxxx> wrote:
>
> with reference to other email thread on perf build failure on Linus mainline
> https://lore.kernel.org/bpf/20220715191641.go6xbmhic3kafcsc@xxxxxxxxxxxxxxxxxx/T/
>
> I see perf build failures on stable-rc 5.18 .. 5.4 with this error [1]
> and also noticed on today's linus mainline tree.
>
> Reported-by: Linux Kernel Functional Testing <lkft@xxxxxxxxxx>
>
> steps to reproduce:
> --------------------
>
> tuxmake --runtime podman \
>         --target-arch x86_64 \
>         --toolchain gcc-11 \
>         --kconfig
> https://builds.tuxbuild.com/2C7oWWWYOYGFtqq4SWX1yG4a2Ne/config \
>         debugkernel headers kernel modules perf
>
> Error log:
> -----------
>   CC       event-parse-api.o
>   CC       staticobjs/btf_dump.o
> find: 'x86_64-linux-gnu-gcc/arch': No such file or directory
> error: Found argument '-I' which wasn't expected, or isn't valid in this context
>
> USAGE:
>     sccache [FLAGS] [OPTIONS] [cmd]...
>
> For more information try --help
>
> and
>
>   CC       util/annotate.o
>   MKDIR    util/
>   CC       util/block-range.o
>   MKDIR    bench/
>   CC       bench/sched-pipe.o
> util/annotate.c: In function 'symbol__disassemble_bpf':
> util/annotate.c:1752:9: error: too few arguments to function
> 'init_disassemble_info'
>  1752 |         init_disassemble_info(&info, s,
>       |         ^~~~~~~~~~~~~~~~~~~~~
> In file included from util/annotate.c:1709:
> /usr/include/dis-asm.h:472:13: note: declared here
>   472 | extern void init_disassemble_info (struct disassemble_info
> *dinfo, void *stream,
>       |             ^~~~~~~~~~~~~~~~~~~~~

This include is guarded by:
#if defined(HAVE_LIBBFD_SUPPORT) && defined(HAVE_LIBBPF_SUPPORT)

and from the header path in the failure you are getting an installed
version of libbfd from /usr/include. Using libbfd (GPLv3) with perf
(GPLv2) is becoming an under tested combination due to:
https://www.gnu.org/licenses/gpl-faq.en.html#v2v3Compatibility
Add the make flag NO_LIBBFD=1 to test without libbfd, which will most
accurately match what distributions build.

Testing on my own machine with libbfd version 2.38 didn't show any failures.

Thanks,
Ian

> [1] https://builds.tuxbuild.com/2C7oWWWYOYGFtqq4SWX1yG4a2Ne/
>
> Best regards
> Naresh Kamboju
>
>
> --
> Linaro LKFT
> https://lkft.linaro.org



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux