LINUX.ORG.RU

gdb+ kernel oops


0

0

допустим в логах что-нибудь типа
написано что баг произошел в my_function+0x165/0x81c

(да речь идет о 2.6)
если запустить
gdb vmlinux
и сказать
(gdb)disassem my_function+0x165/0x81c он покажет то что нужно?
а можно ли чтобы рядом с выводом disassem он показал строчки на С?

anonymous

Я обычно в таких случаях иду в директорию, где я собирал ядро, и делаю:

objdump -S vmlinux | less

Если ядро собрано с поддержкой отладочной информации - то 
исходники тоже будет видно.

anonymous
()
Ответ на: комментарий от anonymous

>objdump -S vmlinux | less

спасибо, лучше чем gdb disassm, перевод на C тоже показывает

>+0x165/0x81c

основная проблемма в этом,
как gdb так и objdump пользуются линейной адресацией инструкций,

а что это за странный адрессс и как его отсчитать от my_function?

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.