x86/cpu.c: unhandled page fault: print pre-fault stack

Do basic manual unwinding and print raw stack addresses, with a
suggested invocation of addr2line to pretty-print the result.
This commit is contained in:
Dominique Martinet
2017-09-25 11:35:58 +09:00
parent b894619d1b
commit d4cd756a91
3 changed files with 73 additions and 1 deletions

View File

@ -5,6 +5,7 @@
extern struct cpu_local_var *clv;
extern void eventfd(int type);
extern void arch_print_stack();
void panic(const char *msg)
{
@ -16,7 +17,9 @@ void panic(const char *msg)
}
cpu_disable_interrupt();
kprintf(msg);
kprintf("%s\n", msg);
arch_print_stack();
while (1) {
cpu_halt();