diff options
author | trimill <trimill@trimillxyz.org> | 2024-01-30 10:19:33 -0500 |
---|---|---|
committer | trimill <trimill@trimillxyz.org> | 2024-01-30 10:19:33 -0500 |
commit | 6b8f33c22d41488b88fcd35331867858d8f67763 (patch) | |
tree | 4a62ac9c6136a9e9b94cab0b6838add70accfe31 /src/arch/amd64/idt.c | |
parent | refactor, improve exception message (diff) | |
download | corn-6b8f33c22d41488b88fcd35331867858d8f67763.tar.gz corn-6b8f33c22d41488b88fcd35331867858d8f67763.tar.bz2 corn-6b8f33c22d41488b88fcd35331867858d8f67763.zip |
added backtraces
Diffstat (limited to 'src/arch/amd64/idt.c')
-rw-r--r-- | src/arch/amd64/idt.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/arch/amd64/idt.c b/src/arch/amd64/idt.c index 83b792c..b4a11bb 100644 --- a/src/arch/amd64/idt.c +++ b/src/arch/amd64/idt.c @@ -4,6 +4,7 @@ #include <lib.h> #include <serial.h> +#include "backtrace.h" #include "idt.h" #include "pic.h" @@ -107,7 +108,7 @@ char *EXCEPTIONS[] = { "0x1F Reserved", }; -void idt_exception_handler(uint64_t exception, uint64_t code) { +void idt_exception_handler(uint64_t exception, uint64_t code, void *rip, void *rbp) { // TODO don't just panic char buf[24]; char msg[256] = "Exception "; @@ -127,7 +128,7 @@ void idt_exception_handler(uint64_t exception, uint64_t code) { strcat(msg, buf); } - panic(msg); + panic_interrupt(rip, rbp, msg); } void idt_pic_eoi(uint8_t exception) { |