|
|
|
@ -58,11 +58,11 @@ pub fn trap_handler() -> ! {
|
|
|
|
|
}
|
|
|
|
|
Trap::Exception(Exception::StoreFault) |
|
|
|
|
|
Trap::Exception(Exception::StorePageFault) => {
|
|
|
|
|
println!("[kernel] PageFault in application, bad addr = {:#x}, bad instruction = {:#x}, core dumped.", stval, cx.sepc);
|
|
|
|
|
println!("[kernel] PageFault in application, bad addr = {:#x}, bad instruction = {:#x}, kernel killed it.", stval, cx.sepc);
|
|
|
|
|
exit_current_and_run_next();
|
|
|
|
|
}
|
|
|
|
|
Trap::Exception(Exception::IllegalInstruction) => {
|
|
|
|
|
println!("[kernel] IllegalInstruction in application, core dumped.");
|
|
|
|
|
println!("[kernel] IllegalInstruction in application, kernel killed it.");
|
|
|
|
|
exit_current_and_run_next();
|
|
|
|
|
}
|
|
|
|
|
Trap::Interrupt(Interrupt::SupervisorTimer) => {
|
|
|
|
|