compiled vmlinux symbols doesn't match the /proc/kallsyms
zerons
sironhide0null at gmail.com
Thu Apr 12 03:10:17 UTC 2018
Hi,
Environment:
Ubuntu 16.04, kernel 4.4.0-119-generic, amd64
cmdline:
BOOT_IMAGE=/boot/vmlinuz-4.4.0-119-generic root=UUID=54a30539-d55c-4664-a716-409963511419 ro find_preseed=/preseed.cfg auto noprompt priority=critical locale=en_US quiet
Steps:
sudo apt-get install linux-image-4.4.0-119-generic
reboot
apt-get source linux-image-4.4.0-119-generic
cd linux-4.4.0
cp /boot/config-4.4.0-119-generic .config
make vmlinux
I also tried `make CONFIG_DEBUG_SECTION_MISMATCH=y vmlinux`, and got some 'section mismatch'
messages.
After that, I checked symbols in vmlinux, for example, 'tty_open', the address was 0xffffffff81502bc0,
while that symbol in /proc/kallsyms was 0xffffffff81502c30. This is very inconvenient to debug the kernel.
For this case(download the source code and `make vmlinux`), how can I get the vmlinux file which can match
the symbols in /proc/kallsyms?
Thanks.
More information about the kernel-team
mailing list