diff options
Diffstat (limited to 'kernel/src/check')
| -rw-r--r-- | kernel/src/check/panic.c | 28 |
1 files changed, 1 insertions, 27 deletions
diff --git a/kernel/src/check/panic.c b/kernel/src/check/panic.c index b5e02a2..277ee37 100644 --- a/kernel/src/check/panic.c +++ b/kernel/src/check/panic.c @@ -15,33 +15,7 @@ __attribute__((noreturn)) void panic(uint64_t rsp, const char *s, ...) va_end(list); if (rsp) { - regs_t *regs = (regs_t *)rsp; - - printf("info regs:\n"); - printf("rax: 0x%x; ", regs->rax); - printf("rbx: 0x%x; ", regs->rbx); - printf("rcx: 0x%x; ", regs->rcx); - printf("rdx: 0x%x; ", regs->rdx); - printf("rdi: 0x%x; ", regs->rdi); - printf("rsi: 0x%x; ", regs->rsi); - printf("rsp: 0x%x; ", regs->rsp); - printf("rbp: 0x%x; ", regs->rbp); - printf("r8: 0x%x; ", regs->r8); - printf("r9: 0x%x; ", regs->r9); - printf("r10: 0x%x; ", regs->r10); - printf("r11: 0x%x; ", regs->r11); - printf("r12: 0x%x; ", regs->r12); - printf("r13: 0x%x; ", regs->r13); - printf("r14: 0x%x; ", regs->r14); - printf("r15: 0x%x; ", regs->r15); - printf("rip: 0x%x; ", regs->rip); - printf("cs: 0x%x; ", regs->cs); - printf("ds: 0x%x; ", regs->seg >> 48); - printf("ss: 0x%x; ", regs->ss); - printf("es: 0x%x; ", (regs->seg >> 32) & 0xFFFF); - printf("fs: 0x%x; ", (regs->seg >> 16) & 0xFFFF); - printf("gs: 0x%x; ", regs->seg & 0xFFFF); - printf("rflags: 0x%x; ", regs->rflags); + print_regs_from_rsp(rsp); } disable_interrupts(); |
