Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ARC: BTF generation failure: no support for complex types #87

Open
geomatsi opened this issue Apr 15, 2022 · 0 comments
Open

ARC: BTF generation failure: no support for complex types #87

geomatsi opened this issue Apr 15, 2022 · 0 comments
Assignees

Comments

@geomatsi
Copy link

geomatsi commented Apr 15, 2022

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.

@geomatsi geomatsi changed the title ARC: BTF generation failure ARC: BTF generation failure: no support for complex types Apr 15, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants