Ubuntu 15.04, with Linux-Next kernel 2015-06-04 compiled and installed.
Then boot this kernel up, then run perf top, but it says symbol not found.
How can I load the kernel symbol manually in perf?
root@ubuntu-server:/boot# uname -r
4.1.0-rc6.060402222+
root@ubuntu-server:/proc# ls kall*
kallsyms
root@ubuntu-server:/boot# ls | grep 4.1.0-rc6.060402222
config-4.1.0-rc6.060402222+
initrd.img-4.1.0-rc6.060402222+
System.map-4.1.0-rc6.060402222+
vmlinuz-4.1.0-rc6.060402222+
root@ubuntu-server:/# perf top
No kallsyms or vmlinux with build-id 438e4365574d514672888bcfdd6292dbcf71f38f was found
[kernel.kallsyms] with build id 438e4365574d514672888bcfdd6292dbcf71f38f not found, continuing without symbols
Warning:
A vmlinux file was not found.
Kernel samples will not be resolved.
^C
root@ubuntu-server:/proc# perf top -k /boot/vmlinuz-4.1.0-rc6.060402222+
Warning:
The /boot/vmlinuz-4.1.0-rc6.060402222+ file can't be used: Success
Kernel samples will not be resolved.
^C
In the Linux-next folder, the .config file has enabled kernel debug:
CONFIG_DEBUG_KERNEL=y
I installed perf, and run "perf top", get the following message:
Warning:
A vmlinux file was not found.
Kernel samples will not be resolved.
After installing "libelf-dev", I compiled the perf again and make install. At last, I run "perf top" and get the right result.
During making install the perf, the system would provide some hints. eg:
config/Makefile:276: No libelf found, disables 'probe' tool, please install elfutils-libelf-devel/libelf-dev
config/Makefile:327: No libunwind found, disabling post unwind support. Please install libunwind-dev[el] >= 1.1
config/Makefile:350: No libaudit.h found, disables 'trace' tool, please install audit-libs-devel or libaudit-dev
config/Makefile:364: slang not found, disables TUI support. Please install slang-devel or libslang-dev
Following these hints, maybe you can solve your problem.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With