addr2line по адресу ядра не может найти исходную строку - PullRequest
0 голосов
/ 09 мая 2018

Я собираю собственное ядро ​​Linux (4.15.0 x86_64) с включенным символом отладки. Я считаю, что addr2line не в состоянии указать на строку исходного кода.

addr2line -e vmlinux 0xffffffff9be625f0

GDB также возвращает «Информация о номере строки недоступна для адреса» с помощью следующей команды

$ gdb ../linux/vmlinux / proc / kcore

... Чтение символов из ../linux/vmlinux...done.

$ информационная строка * 0xffffffff9be625f0

Что нужно сделать, чтобы получить номер строки с адреса? Вот файл .config .

1 Ответ

0 голосов
/ 09 мая 2018

Сначала - попытайтесь выяснить, к какой процедуре относится этот адрес из / proc / kallsyms. Затем вычислите смещение этого адреса от начала этого процесса. Тогда:

objdump -D -S -l ./vmlinux | less

найдите название вашей процедуры и затем перейдите к вашему смещению. Конечно, ваше ядро ​​vmlinux должно быть скомпилировано с символами отладки.

...