bughelp wanted
説明
Hello,
Why does the profile utility from the libbpf-tool return less detailed stack traces compared to the old version?
- libbpf-tool (10 samples):
$ /opt/bcc/bin/profile -F49 -d --stack-storage-size=$((1024*1024)) -f -p 1087382 10
Could not open /usr/lib/x86_64-linux-gnu/libc.so.6 (deleted)
Could not open /usr/lib/x86_64-linux-gnu/libpthread.so.0 (deleted)
Could not open /usr/lib/x86_64-linux-gnu/libresolv.so.2 (deleted)
Could not open /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2 (deleted)
Sampling at 49 Hertz of PID [1087382] by user + kernel for 10 secs.
[unknown]
[unknown]
[unknown]
[unknown]
[unknown]
[unknown]
- kubelet (1087382)
2
[unknown]
[unknown]
[unknown]
[unknown]
[unknown]
- kubelet (1087382)
...
- python (154 samples):
$ python3 /opt/bcc/share/bcc/tools/profile -F49 -d --stack-storage-size=$((1024*1024)) -fa -p 1087382 10
Sampling at 49 Hertz of PID [1087382] by user + kernel stack for 10 secs.
__switch_to+0x165 [kernel]
__switch_to+0x165 [kernel]
__schedule+0x2b7 [kernel]
schedule+0x68 [kernel]
futex_wait_queue+0x66 [kernel]
futex_wait+0x151 [kernel]
do_futex+0x178 [kernel]
__x64_sys_futex+0x78 [kernel]
do_syscall_64+0x59 [kernel]
entry_SYSCALL_64_after_hwframe+0x73 [kernel]
--
[unknown] [kubelet]
[unknown] [kubelet]
[unknown] [kubelet]
[unknown] [kubelet]
[unknown] [kubelet]
[unknown] [kubelet]
[unknown] [kubelet]
[unknown] [kubelet]
[unknown] [kubelet]
[unknown] [kubelet]
[unknown] [kubelet]
[unknown] [kubelet]
[unknown] [kubelet]
[unknown] [kubelet]
- kubelet (1087382)
1
...
Why so huge difference between python based profile and libbpf based versions?
OS: Ubuntu Jammy 22.04 Linux: 6.2.0