Re: Kernel build fail with 'btf_encoder__encode: btf__dedup failed!'

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

 



On Sat, Jan 28, 2023 at 01:23:25PM -0600, Alexandre Peixoto Ferreira wrote:
> Jirka and Daniel,
> 
> On 1/27/23 18:00, Jiri Olsa wrote:
> > On Fri, Jan 27, 2023 at 04:28:54PM -0600, Alexandre Peixoto Ferreira wrote:
> > > 
> > > On 1/24/23 00:13, Daniel Xu wrote:
> > > > Hi Jiri,
> > > > 
> > > > On Mon, Jan 23, 2023, at 1:06 AM, Jiri Olsa wrote:
> > > > > On Sun, Jan 22, 2023 at 10:48:44AM -0700, Daniel Xu wrote:
> > > > > > Hi,
> > > > > > 
> > > > > > I'm getting the following error during build:
> > > > > > 
> > > > > >           $ ./tools/testing/selftests/bpf/vmtest.sh -j30
> > > > > >           [...]
> > > > > >             BTF     .btf.vmlinux.bin.o
> > > > > >           btf_encoder__encode: btf__dedup failed!
> > > > > >           Failed to encode BTF
> > > > > >             LD      .tmp_vmlinux.kallsyms1
> > > > > >             NM      .tmp_vmlinux.kallsyms1.syms
> > > > > >             KSYMS   .tmp_vmlinux.kallsyms1.S
> > > > > >             AS      .tmp_vmlinux.kallsyms1.S
> > > > > >             LD      .tmp_vmlinux.kallsyms2
> > > > > >             NM      .tmp_vmlinux.kallsyms2.syms
> > > > > >             KSYMS   .tmp_vmlinux.kallsyms2.S
> > > > > >             AS      .tmp_vmlinux.kallsyms2.S
> > > > > >             LD      .tmp_vmlinux.kallsyms3
> > > > > >             NM      .tmp_vmlinux.kallsyms3.syms
> > > > > >             KSYMS   .tmp_vmlinux.kallsyms3.S
> > > > > >             AS      .tmp_vmlinux.kallsyms3.S
> > > > > >             LD      vmlinux
> > > > > >             BTFIDS  vmlinux
> > > > > >           FAILED: load BTF from vmlinux: No such file or directory
> > > > > >           make[1]: *** [scripts/Makefile.vmlinux:35: vmlinux] Error 255
> > > > > >           make[1]: *** Deleting file 'vmlinux'
> > > > > >           make: *** [Makefile:1264: vmlinux] Error 2
> > > > > > 
> > > > > > This happens on both bpf-next/master (84150795a49) and 6.2-rc5
> > > > > > (2241ab53cb).
> > > > > > 
> > > > > > I've also tried arch linux pahole 1:1.24+r29+g02d67c5-1 as well as
> > > > > > upstream pahole on master (02d67c5176) and upstream pahole on
> > > > > > next (2ca56f4c6f659).
> > > > > > 
> > > > > > Of the above 6 combinations, I think I've tried all of them (maybe
> > > > > > missing 1 or 2).
> > > > > > 
> > > > > > Looks like GCC got updated recently on my machine, so perhaps
> > > > > > it's related?
> > > > > > 
> > > > > >           CONFIG_CC_VERSION_TEXT="gcc (GCC) 12.2.1 20230111"
> > > > > > 
> > > > > > I'll try some debugging, but just wanted to report it first.
> > > > > hi,
> > > > > I can't reproduce that.. can you reproduce it outside vmtest.sh?
> > > > > 
> > > > > there will be lot of output with patch below, but could contain
> > > > > some more error output
> > > > Thanks for the hints. Doing a regular build outside of vmtest.sh
> > > > seems to work ok. So maybe it's a difference in the build config.
> > > > 
> > > > I'll put a little more time into debugging to see if it goes anywhere.
> > > > But I'll have to get back to the regularly scheduled programming
> > > > soon.
> > > 6.2-rc5 compiles correctly when CONFIG_X86_KERNEL_IBT is commented but fails
> > > in pahole when CONFIG_X86_KERNEL_IBT is set.
> > could you plese attach your config and the build error?
> > I can't reproduce that
> > 
> > thanks,
> > jirka
> 
> My working .config is available at https://pastebin.pl/view/bef3765c
> change CONFIG_X86_KERNEL_IBT to y to get the error.
> 
> The error is similar to Daniel's and is shown below:
> 
>   LD      .tmp_vmlinux.btf
>   BTF     .btf.vmlinux.bin.o
> btf_encoder__encode: btf__dedup failed!
> Failed to encode BTF
>   LD      .tmp_vmlinux.kallsyms1
>   NM      .tmp_vmlinux.kallsyms1.syms
>   KSYMS   .tmp_vmlinux.kallsyms1.S
>   AS      .tmp_vmlinux.kallsyms1.S
>   LD      .tmp_vmlinux.kallsyms2
>   NM      .tmp_vmlinux.kallsyms2.syms
>   KSYMS   .tmp_vmlinux.kallsyms2.S
>   AS      .tmp_vmlinux.kallsyms2.S
>   LD      .tmp_vmlinux.kallsyms3
>   NM      .tmp_vmlinux.kallsyms3.syms
>   KSYMS   .tmp_vmlinux.kallsyms3.S
>   AS      .tmp_vmlinux.kallsyms3.S
>   LD      vmlinux
>   BTFIDS  vmlinux
> FAILED: load BTF from vmlinux: No such file or directory
> make[1]: *** [scripts/Makefile.vmlinux:35: vmlinux] Error 255
> make[1]: *** Deleting file 'vmlinux'
> make: *** [Makefile:1264: vmlinux] Error 2

I can't reproduce that.. I tried with gcc versions:

  gcc (GCC) 13.0.1 20230117 (Red Hat 13.0.1-0)
  gcc (GCC) 12.2.1 20221121 (Red Hat 12.2.1-4)

I haven't found fedora setup with 12.2.1 20230111 yet

I tried alsa with latest pahole master branch

were you guys able to get any more verbose output
that I suggested earlier?

jirka



[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