Re: Check pahole availibity and BPF support of toolchain before starting a Linux kernel build

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

 



Is it possible that someone tests with Nick Desaulniers's DWARF v5 patchset?

With b4 tool installed:

link="https://lore.kernel.org/r/CAKwvOdkZEiHK01OD420USb0j=F0LcrnRbauv9Yw26tu-GRbYkg@xxxxxxxxxxxxxx";
b4 -d am $link

...should give you a file which you can directly apply with git tool.

File: v3_20201203_ndesaulniers_kbuild_make_dwarf_version_a_choice.mbx

As my selfmade LLVM toolchain seems to be no good choice I jumped to gcc-10.

I see gazillions of DW_AT_ and DW_TAG_INVALID (0x48) warnings:

die__process_inline_expansion: DW_TAG_INVALID (0x48) @ <0x1c2a25e> not handled!

This might be due to DWARF version 5 patchset.
I did not check DWARF v2 (default) or DWARF v4 choices.

Beyond this, I noticed:

$ git grep LLVM_OBJCOPY scripts/ tools/
scripts/Makefile.modfinal:              LLVM_OBJCOPY=$(OBJCOPY)
$(PAHOLE) -J --btf_base vmlinux $@; \
scripts/link-vmlinux.sh:        LLVM_OBJCOPY=${OBJCOPY} ${PAHOLE} -J ${1}
tools/testing/selftests/bpf/Makefile:LLVM_OBJCOPY       ?= llvm-objcopy

When only passing gcc-10 as compiler and ld.bfd as linker -
LLVM_OBJCOPY=objcopy is passed.
Means objcopy from GNU/binutils is used.
As far as I understand the code you want here llvm-objcopy
(scripts/Makefile.modfinal)?

I did a next tryout with gcc-10 and LLVM=1 means use all equivalent
LLVM tools to GNU/binutils.
Means use llvm-objcopy, llvm-nm, llvm-ar, llvm-objdump, etc.
Please see the link below under [1].

En plus, I tried pahole with Jirka "Convulted" Olsa (JCO) fix by passing...
   PAHOLE=/opt/pahole/bin/pahole
...to my make line.

Again I see that DW_TAG_INVALID (0x48) warnings.
Can someone enlighten me what that means?

Finally, with all that warnings observed I could "successfully"
generate Linux-kernel Debian packages.
I do NOT install software I do NOT trust - not booted - NoNoNo...

Thanks.

In the dark,
- Sedat -

[1] https://www.kernel.org/doc/html/latest/kbuild/llvm.html#llvm-utilities




[Index of Archives]     [Linux&nblp;USB Development]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite Secrets]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux