Skip to content

arm64 kernels don't have BTF #80

@alban

Description

@alban

The amd64 kernel contains BTF as expected. But the arm64 kernel does not.

Would it be possible to add BTF in the arm64 kernel too?

$ skopeo copy --multi-arch all docker://ghcr.io/cilium/ci-kernels:stable-debug oci-archive:image.tar:ghcr.io/cilium/ci-kernels:stable-debug
$ tar xf image.tar
$ mkdir amd64 arm64
$ tar -C amd64/ -xf blobs/sha256/04823e48009fd0d990e88bd9d67a4d25bcb3a08db6d4a9fbaa75077b1d1dcc44
$ tar -C arm64/ -xf blobs/sha256/69edc719ab0fe4fdace893d32f68ac9b9963efa8900f119a868ea4cf4a702d68
$ file amd64/boot/vmlinux arm64/boot/vmlinux
amd64/boot/vmlinux: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, BuildID[sha1]=a99b6e10ab0c25b625e98c653070785adfd9157d, with debug_info, not stripped
arm64/boot/vmlinux: ELF 64-bit LSB pie executable, ARM aarch64, version 1 (SYSV), statically linked, BuildID[sha1]=65b52e94a446c54ac7a70c64b30d14c75a98159f, with debug_info, not stripped
$ bpftool btf dump file amd64/boot/vmlinux format c|head -2
#ifndef __VMLINUX_H__
#define __VMLINUX_H__
$ bpftool btf dump file arm64/boot/vmlinux format c|head -2
libbpf: failed to find '.BTF' ELF section in arm64/boot/vmlinux
Error: failed to load BTF from arm64/boot/vmlinux: No data available
$ objdump -h  amd64/boot/vmlinux|grep -i btf
 13 .BTF          003f2b96  ffffffff822d19e4  00000000022d19e4  014d19e4  2**0
 14 .BTF_ids      00000e84  ffffffff826c457c  00000000026c457c  018c457c  2**0
$ objdump -h  arm64/boot/vmlinux|grep -i btf
$

The build logs of the GitHub Action contains:

2025-07-04T18:37:57.2707152Z #11 [linux/amd64->arm64 configure-vmlinux 7/7] RUN ./configure-vmlinux.sh
2025-07-04T18:37:57.2707898Z #11 8.282 Ignoring unrecognised option CONFIG_UPROBE_EVENT
2025-07-04T18:37:57.2708541Z #11 8.283 Ignoring unrecognised option CONFIG_MEDIA_RC_SUPPORT
2025-07-04T18:37:57.2710135Z #11 8.283 Ignoring unrecognised option CONFIG_DEBUG_INFO_BTF_MODULES
2025-07-04T18:37:57.2710876Z #11 8.283 Ignoring unrecognised option CONFIG_DEBUG_INFO_BTF
2025-07-04T18:37:57.2711479Z #11 8.283 Ignoring unrecognised option CONFIG_BPFILTER

cc @mauriciovasquezbernal

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions