Kernel: Add double fault handler

This commit is contained in:
apio 2022-11-01 11:11:33 +01:00
parent b4914c26fe
commit 739fa56ece

View File

@ -14,11 +14,16 @@ extern "x86-interrupt" fn page_fault_handler(stack_frame: InterruptStackFrame, f
try_println!("Page fault at {:#?}\n{:#?}", faulting_address, stack_frame); try_println!("Page fault at {:#?}\n{:#?}", faulting_address, stack_frame);
} }
extern "x86-interrupt" fn double_fault_handler(stack_frame: InterruptStackFrame, _error_code: u64) -> ! {
panic!("Double fault!\n{:#?}", stack_frame);
}
pub fn load() pub fn load()
{ {
unsafe { unsafe {
IDT.breakpoint.set_handler_fn(breakpoint_handler); IDT.breakpoint.set_handler_fn(breakpoint_handler);
IDT.page_fault.set_handler_fn(page_fault_handler); IDT.page_fault.set_handler_fn(page_fault_handler);
IDT.double_fault.set_handler_fn(double_fault_handler);
IDT.load(); IDT.load();
} }
} }