forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 13
Open
Description
Kernel build fails when CONFIG_DEBUG_INFO_BTF configuration option is enabled:
$ ARCH=arc CROSS_COMPILE=arc32-linux- make loader
...
AR init/built-in.a
LD vmlinux.o
MODPOST vmlinux.symvers
MODINFO modules.builtin.modinfo
GEN modules.builtin
LD .tmp_vmlinux.btf
BTF .btf.vmlinux.bin.o
Complex, interval and imaginary float types are not supported: 3
Encountered error while encoding BTF.
LD .tmp_vmlinux.kallsyms1
KSYMS .tmp_vmlinux.kallsyms1.S
AS .tmp_vmlinux.kallsyms1.S
LD .tmp_vmlinux.kallsyms2
KSYMS .tmp_vmlinux.kallsyms2.S
AS .tmp_vmlinux.kallsyms2.S
LD vmlinux
BTFIDS vmlinux
FAILED: load BTF from vmlinux: No such file or directory
make: *** [Makefile:1161: vmlinux] Error 255
make: *** Deleting file 'vmlinux'
This issue can be reproduced for ARCv2 and ARCv3 (32bit and 64bit). Version of pahole tool:
$ pahole --version
v1.23
Temporary workaround is available: see b3f0ecc.
The root cause is in Dwarf complex/float types available in libgcc object files in ARC toolchains. It looks like proper fix should belong to pahole tool. To be more specific, complex Dwarf types should be handled along the same lines as float types are now handled: see pahole commit.
Metadata
Metadata
Assignees
Labels
No labels