From 5478b9ba7b8c71fb2defe4c1e5dc42d98c66e50f Mon Sep 17 00:00:00 2001 From: WangRunji Date: Sat, 17 Nov 2018 12:42:19 +0800 Subject: [PATCH] no longer show normal page fault --- kernel/src/arch/riscv32/interrupt.rs | 9 +++------ kernel/src/arch/x86_64/interrupt/handler.rs | 6 ++---- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/kernel/src/arch/riscv32/interrupt.rs b/kernel/src/arch/riscv32/interrupt.rs index 7942938..c5ce157 100644 --- a/kernel/src/arch/riscv32/interrupt.rs +++ b/kernel/src/arch/riscv32/interrupt.rs @@ -136,13 +136,10 @@ fn illegal_inst(tf: &mut TrapFrame) { * process page fault exception */ fn page_fault(tf: &mut TrapFrame) { - let addr: usize; - // move stval(i.e. sbadaddr) to addr - addr = stval::read(); - error!("\nEXCEPTION: Page Fault @ {:#x}", addr); + let addr = stval::read(); + trace!("\nEXCEPTION: Page Fault @ {:#x}", addr); - use memory::page_fault_handler; - if !page_fault_handler(addr) { + if !::memory::page_fault_handler(addr) { ::trap::error(tf); } } diff --git a/kernel/src/arch/x86_64/interrupt/handler.rs b/kernel/src/arch/x86_64/interrupt/handler.rs index 7c727d7..23027e3 100644 --- a/kernel/src/arch/x86_64/interrupt/handler.rs +++ b/kernel/src/arch/x86_64/interrupt/handler.rs @@ -111,13 +111,11 @@ fn double_fault(tf: &TrapFrame) { fn page_fault(tf: &mut TrapFrame) { let addr: usize; unsafe { asm!("mov %cr2, $0" : "=r" (addr)); } - error!("\nEXCEPTION: Page Fault @ {:#x}, code: {:#x}", addr, tf.error_code); - use memory::page_fault_handler; - if page_fault_handler(addr) { + if ::memory::page_fault_handler(addr) { return; } - + error!("\nEXCEPTION: Page Fault @ {:#x}, code: {:#x}", addr, tf.error_code); error(tf); }