The patch titled Documentation: add hint about call traces & module symbols to BUG-HUNTING has been added to the -mm tree. Its filename is documentation-add-hint-about-call-traces-module-symbols-to-bug-hunting.patch *** Remember to use Documentation/SubmitChecklist when testing your code *** See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find out what to do about this The current -mm tree may be found at http://userweb.kernel.org/~akpm/mmotm/ ------------------------------------------------------ Subject: Documentation: add hint about call traces & module symbols to BUG-HUNTING From: Richard Kennedy <richard@xxxxxxxxxxxxxxx> Here's a couple of small additions to BUG-HUNTING. 1. point out that you can list code in gdb with only one command (gdb) l *(<symbol> + offset) 2. give a very brief hint how to decode module symbols in call traces Signed-off-by: Richard Kennedy <richard@xxxxxxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- Documentation/BUG-HUNTING | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff -puN Documentation/BUG-HUNTING~documentation-add-hint-about-call-traces-module-symbols-to-bug-hunting Documentation/BUG-HUNTING --- a/Documentation/BUG-HUNTING~documentation-add-hint-about-call-traces-module-symbols-to-bug-hunting +++ a/Documentation/BUG-HUNTING @@ -214,6 +214,23 @@ And recompile the kernel with CONFIG_DEB gdb vmlinux (gdb) p vt_ioctl (gdb) l *(0x<address of vt_ioctl> + 0xda8) +or, as one command + (gdb) l *(vt_ioctl + 0xda8) + +If you have a call trace, such as :- +>Call Trace: +> [<ffffffff8802c8e9>] :jbd:log_wait_commit+0xa3/0xf5 +> [<ffffffff810482d9>] autoremove_wake_function+0x0/0x2e +> [<ffffffff8802770b>] :jbd:journal_stop+0x1be/0x1ee +> ... +this shows the problem in the :jbd: module. You can load that module in gdb +and list the relevant code. + gdb fs/jbd/jbd.ko + (gdb) p log_wait_commit + (gdb) l *(0x<address> + 0xa3) +or + (gdb) l *(log_wait_commit + 0xa3) + Another very useful option of the Kernel Hacking section in menuconfig is Debug memory allocations. This will help you see whether data has been _ Patches currently in -mm which might be from richard@xxxxxxxxxxxxxxx are documentation-add-hint-about-call-traces-module-symbols-to-bug-hunting.patch - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html