17 lines
354 B
Rust
17 lines
354 B
Rust
//! Program trap handling interfaces
|
|
|
|
use super::{Memory, MemoryAccessReason, PageSize};
|
|
|
|
/// Handle VM traps
|
|
pub trait HandlePageFault {
|
|
/// Handle page fault
|
|
fn page_fault(
|
|
&mut self,
|
|
reason: MemoryAccessReason,
|
|
memory: &mut Memory,
|
|
vaddr: u64,
|
|
size: PageSize,
|
|
dataptr: *mut u8,
|
|
) -> bool;
|
|
}
|