diff --git a/src/address_space/mod.rs b/src/address_space/mod.rs index d619cd1..c30ca48 100644 --- a/src/address_space/mod.rs +++ b/src/address_space/mod.rs @@ -271,6 +271,16 @@ impl AddrSpace } impl AddrSpace { + pub fn copy_mappings_from( + &mut self, + src: &Self, + mapping_start: M::VirtAddr, + size: usize, + ) -> AxResult { + self.pt.copy_from(&src.pt, mapping_start, size); + Ok(()) + } + pub fn clone(&self) -> AxResult { let mut cloned_aspace = Self::new_empty(self.base(), self.size())?;