diff --git a/src/interrupts.rs b/src/interrupts.rs index ebeffc67..025eec43 100644 --- a/src/interrupts.rs +++ b/src/interrupts.rs @@ -53,7 +53,7 @@ extern "x86-interrupt" fn breakpoint_handler(stack_frame: &mut InterruptStackFra extern "x86-interrupt" fn double_fault_handler( stack_frame: &mut InterruptStackFrame, _error_code: u64, -) { +) -> ! { panic!("EXCEPTION: DOUBLE FAULT\n{:#?}", stack_frame); } diff --git a/tests/stack_overflow.rs b/tests/stack_overflow.rs index 269c3da3..0b5a654d 100644 --- a/tests/stack_overflow.rs +++ b/tests/stack_overflow.rs @@ -45,7 +45,7 @@ pub fn init_test_idt() { extern "x86-interrupt" fn test_double_fault_handler( _stack_frame: &mut InterruptStackFrame, _error_code: u64, -) { +) -> ! { serial_println!("[ok]"); exit_qemu(QemuExitCode::Success); loop {}