Re: FAILED unresolved symbol vfs_truncate on arm64 with LLVM
From: Nathan Chancellor <nathan@kernel.org>
Date: 2021-02-09 05:23:58
Also in:
netdev
On Mon, Feb 08, 2021 at 08:45:43PM -0800, Andrii Nakryiko wrote:
On Mon, Feb 8, 2021 at 7:44 PM Nathan Chancellor [off-list ref] wrote:quoted
Hi all, Recently, an issue with CONFIG_DEBUG_INFO_BTF was reported for arm64: https://groups.google.com/g/clang-built-linux/c/de_mNh23FOc/m/E7cu5BwbBAAJ $ make -skj"$(nproc)" ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- \ LLVM=1 O=build/aarch64 defconfig $ scripts/config \ --file build/aarch64/.config \ -e BPF_SYSCALL \ -e DEBUG_INFO_BTF \ -e FTRACE \ -e FUNCTION_TRACER $ make -skj"$(nproc)" ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- \ LLVM=1 O=build/aarch64 olddefconfig all ... FAILED unresolved symbol vfs_truncate ... My bisect landed on commit 6e22ab9da793 ("bpf: Add d_path helper") although that seems obvious given that is what introduced BTF_ID(func, vfs_truncate). I am using the latest pahole v1.20 and LLVM is at https://github.com/llvm/llvm-project/commit/14da287e18846ea86e45b421dc47f78ecc5aa7cb although I can reproduce back to LLVM 10.0.1, which is the earliest version that the kernel supports. I am very unfamiliar with BPF so I have no idea what is going wrong here. Is this a known issue?I'll skip the reproduction games this time and will just request the vmlinux image. Please upload somewhere so that we can look at DWARF and see what's going on. Thanks.
Sure thing, let me know if this works. I uploaded in two places to make it easier to grab: zstd compressed: https://github.com/nathanchance/bug-files/blob/3b2873751e29311e084ae2c71604a1963f5e1a48/btf-aarch64/vmlinux.zst uncompressed: https://1drv.ms/u/s!AsQNYeB-IEbqjQiUOspbEdXx49o7?e=ipA9Hv Cheers, Nathan