Hi Hengqi, On Thu, 2022-12-01 at 23:34 +0800, Hengqi Chen via Elfutils-devel wrote: > I am using pahole (which relies on libelf) to process an elf file > ([0]): > > LLVM_OBJCOPY="objcopy" pahole -J --btf_gen_floats --btf_base > vmlinux adl_pci9111.ko > > This failed with: > > die__process: DW_TAG_compile_unit, DW_TAG_type_unit, > DW_TAG_partial_unit or DW_TAG_skeleton_unit expected got member > (0xd)! > > The .ko contains two CU, readelf says that the abbrev offsets are at > 0 and 0x907, > but dwarf_nextcu reports that abbrev offsets are both at 0. > > pahole expects to find DW_TAG_compile_unit, but seams that the wrong > abbrev offset causes the failure. > > > [0]: https://gitlab.com/chenhengqi/loong-debug
I took a quick look at the adl_pci9111.ko there. And the issue is that elfutils doesn't know how to handle the relocations for LoongArch yet. Specifically the backend should implement the reloc_simple_type hook. Cheers, Mark