Comment # 4 on bug 1188589 from
My bad, I didn't notice before that the /sys/kernel/btf/vmlinux file was
actually used, but then libbpf started checking the other files anyway:

access("/sys/kernel/btf/vmlinux", R_OK) = 0
openat(AT_FDCWD, "/sys/kernel/btf/vmlinux", O_RDONLY) = 3
newfstatat(3, "", {st_mode=S_IFREG|0444, st_size=4511209, ...}, AT_EMPTY_PATH)
= 0
read(3,
"\237\353\1\0\30\0\0\0\0\0\0\0\350\223(\0\350\223(\0\351A\34\0\1\0\0\0\0\0\0\1"...,
4096) = 4096
newfstatat(3, "", {st_mode=S_IFREG|0444, st_size=4511209, ...}, AT_EMPTY_PATH)
= 0
lseek(3, 4509696, SEEK_SET)             = 4509696
read(3, "t\0pirq_vlsi_get\0pirq_sis_set\0pir"..., 4096) = 1513
lseek(3, 0, SEEK_SET)                   = 0
mmap(NULL, 4513792, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x7f3945622000
read(3,
"\237\353\1\0\30\0\0\0\0\0\0\0\350\223(\0\350\223(\0\351A\34\0\1\0\0\0\0\0\0\1"...,
4509696) = 4096
read(3,
"\224\n\0\0Y\2\0\0\0/\0\0\236\n\0\0I\0\0\0\0001\0\0\253\n\0\0I\0\0\0"...,
4505600) = 4096
read(3, "_pm_parse_addr\0mptcp_pm_nl_data_"..., 4096) = 4096
read(3, "t\0pirq_vlsi_get\0pirq_sis_set\0pir"..., 4096) = 1513
mmap(NULL, 4513792, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x7f39451d4000
close(0)                                = 0
munmap(0x7f39451d4000, 4513792)         = 0
munmap(0x7f3945622000, 4513792)         = 0
close(3)                                = 0
access("/boot/vmlinux-5.13.2-1-default", R_OK) = -1 ENOENT (No such file or
directory)
access("/lib/modules/5.13.2-1-default/vmlinux-5.13.2-1-default", R_OK) = -1
ENOENT (No such file or directory)
access("/lib/modules/5.13.2-1-default/build/vmlinux", R_OK) = -1 ENOENT (No
such file or directory)
access("/usr/lib/modules/5.13.2-1-default/kernel/vmlinux", R_OK) = -1 ENOENT
(No such file or directory)
access("/usr/lib/debug/boot/vmlinux-5.13.2-1-default", R_OK) = -1 ENOENT (No
such file or directory)
access("/usr/lib/debug/boot/vmlinux-5.13.2-1-default.debug", R_OK) = -1 ENOENT
(No such file or directory)
access("/usr/lib/debug/lib/modules/5.13.2-1-default/vmlinux", R_OK) = -1 ENOENT
(No such file or directory)
write(2, "libbpf: failed to find valid ker"..., 40libbpf: failed to find valid
kernel BTF
) = 40
write(2, "libbpf: Error loading vmlinux BT"..., 38libbpf: Error loading vmlinux
BTF: -3
) = 38
write(2, "libbpf: failed to load object 'l"..., 42libbpf: failed to load object
'lockc_bpf'
) = 42
write(2, "libbpf: failed to load BPF skele"..., 52libbpf: failed to load BPF
skeleton 'lockc_bpf': -3

My theory so far is that processing the first vmlinux file fails somewhere
here:

https://github.com/torvalds/linux/blob/master/tools/lib/bpf/btf.c#L4431-L4432

But the `pr_debug` message doesn't show up. And what's more, the debug mode
can't be enabled in BPF skeletons... it can be set only when executing
`bpftool` commands.

I will try to dig in more and see what's happening in that file.


You are receiving this mail because: