Hi Arnaldo, On Fri, Jun 06, 2025 at 12:37:55PM -0300, Arnaldo Carvalho de Melo wrote: > root@number:~# perf trace -e openat --max-events=1 > libbpf: failed to read kernel BTF from '/sys/kernel/btf/vmlinux': -ENODEV > libbpf: failed to read kernel BTF from '/sys/kernel/btf/vmlinux': -ENODEV > 0.000 ( 0.016 ms): ptyxis-agent/4375 openat(dfd: CWD, filename: "/proc/6593/cmdline", flags: RDONLY|CLOEXEC) = 13 > root@number:~# > > openat(AT_FDCWD, "/sys/kernel/btf/vmlinux", O_RDONLY) = 258 > mmap(NULL, 6519699, PROT_READ, MAP_PRIVATE, 258, 0) = -1 ENODEV (No such device) > libbpf: failed to read kernel BTF from '/sys/kernel/btf/vmlinux': -ENODEV Have you included the commit below in the kernel side? commit a539e2a6d51d1c12d89eec149ccc72ec561639bc Author: Lorenz Bauer <lmb@xxxxxxxxxxxxx> Date: Tue May 20 14:01:17 2025 +0100 btf: Allow mmap of vmlinux btf User space needs access to kernel BTF for many modern features of BPF. Right now each process needs to read the BTF blob either in pieces or as a whole. Allow mmaping the sysfs file so that processes can directly access the memory allocated for it in the kernel. remap_pfn_range is used instead of vm_insert_page due to aarch64 compatibility issues. Signed-off-by: Lorenz Bauer <lmb@xxxxxxxxxxxxx> Signed-off-by: Andrii Nakryiko <andrii@xxxxxxxxxx> Tested-by: Alan Maguire <alan.maguire@xxxxxxxxxx> Reviewed-by: Shakeel Butt <shakeel.butt@xxxxxxxxx> Link: https://lore.kernel.org/bpf/20250520-vmlinux-mmap-v5-1-e8c941acc414@xxxxxxxxxxxxx Thanks, Leo