Messages in this thread |  | | | Date | Fri, 29 May 1998 10:26:20 -0400 (EDT) | | From | "Richard B. Johnson" <> | | Subject | Re: How to debug an oops. |
| |
On Fri, 29 May 1998, Brian Schau wrote:
> Hi, > > > Subject says it all. How do I find information about how to debug an > oops: > > > May 29 14:28:02 rlis6 kernel: Unable to handle kernel paging request at > virtual address ca31d1c5 > ....? > (Is it an oops?) > Regards,
If the oops does not kill the system, copy the oops from one of the log-files (/var/log/info /var/log/debug, etc..) and run it through ksymoops (source is linux/scripts/ksymoops.cc).
If the oops halts a boot, record the IP address, not the virtual address as shown above. Then, after booting a kernel that works, use gdb:
# gdb /usr/src/linux/vmlinux (gdb) disassemble [saved IP address]
If the oops is consistent, you can recompile the kernel with the "-g" option (in the top-level Makefile, where CC is defined, add -g). rebuild the entire kernel (make clean), them make bzImage.
After you get the oops, write down the IP address again, then reboot again.
Then:
# gdb /usr/src/linux/vmlinux (gdb) list *saved_IP_address
This will show the actual line of code that, when executed, caused the oops. Neat! Fix. Make a patch-file. Submit!
Cheers, Dick Johnson ***** FILE SYSTEM MODIFIED ***** Penguin : Linux version 2.1.103 on an i586 machine (66.15 BogoMips). Warning : It's hard to remain at the trailing edge of technology.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu
|  |