Lines Matching refs:MMArch
19 arch::{asm::current::current_pcb, mm::PageMapper, CurrentIrqArch, MMArch},
123 user_mapper: MMArch::setup_new_usermapper()?, in new()
128 brk_start: MMArch::USER_BRK_START, in new()
129 brk: MMArch::USER_BRK_START, in new()
167 let tmp_flags: PageFlags<MMArch> = PageFlags::new().set_write(true); in try_clone()
172 PageFrameCount::new(vma_guard.region.size() / MMArch::PAGE_SIZE), in try_clone()
183 MMArch::phys_2_virt( in try_clone()
194 MMArch::phys_2_virt( in try_clone()
208 new_frame.copy_from_nonoverlapping(current_frame, MMArch::PAGE_SIZE); in try_clone()
247 let addr = hint.data() & (!MMArch::PAGE_OFFSET_MASK); in map_anonymous()
299 PageFlags<MMArch>, in mmap() argument
301 &mut dyn Flusher<MMArch>, in mmap() argument
337 &mut active as &mut dyn Flusher<MMArch> in mmap()
341 &mut inactive as &mut dyn Flusher<MMArch> in mmap()
373 let mut flusher: PageFlushAll<MMArch> = PageFlushAll::new(); in munmap()
417 &mut active as &mut dyn Flusher<MMArch> in mprotect()
420 &mut inactive as &mut dyn Flusher<MMArch> in mprotect()
453 let new_flags: PageFlags<MMArch> = r_guard in mprotect()
485 let mut flusher: PageFlushAll<MMArch> = PageFlushAll::new(); in unmap_all()
501 assert!(new_brk.check_aligned(MMArch::PAGE_SIZE)); in set_brk()
572 unsafe { MMArch::set_table(PageTableKind::User, MMArch::initial_page_table()) } in drop()
598 vm_holes: core::iter::once((VirtAddr::new(0), MMArch::USER_END_VADDR.data())) in new()
673 if requested.end() >= MMArch::USER_END_VADDR || !vaddr.check_aligned(MMArch::PAGE_SIZE) { in find_free_at()
824 flags: PageFlags<MMArch>, in remap() argument
826 mut flusher: impl Flusher<MMArch>, in remap() argument
844 pub fn unmap(&self, mapper: &mut PageMapper, mut flusher: impl Flusher<MMArch>) { in unmap() argument
885 assert!(region.start().check_aligned(MMArch::PAGE_SIZE)); in extract()
886 assert!(region.end().check_aligned(MMArch::PAGE_SIZE)); in extract()
938 flags: PageFlags<MMArch>,
976 pub fn flags(&self) -> PageFlags<MMArch> { in flags() argument
989 flags: PageFlags<MMArch>, in remap() argument
991 mut flusher: impl Flusher<MMArch>, in remap() argument
1035 flags: PageFlags<MMArch>, in physmap() argument
1037 mut flusher: impl Flusher<MMArch>, in physmap() argument
1063 region: VirtRegion::new(destination.virt_address(), count.data() * MMArch::PAGE_SIZE), in physmap()
1084 flags: PageFlags<MMArch>, in zeroed() argument
1086 mut flusher: impl Flusher<MMArch>, in zeroed() argument
1110 page_count.data() * MMArch::PAGE_SIZE, in zeroed()
1127 let vaddr = MMArch::phys_2_virt(paddr).unwrap(); in zeroed()
1128 MMArch::write_bytes(vaddr, 0, MMArch::PAGE_SIZE); in zeroed()
1175 pub const DEFAULT_USER_STACK_BOTTOM: VirtAddr = MMArch::USER_STACK_START;
1188 assert!(stack_bottom.check_aligned(MMArch::PAGE_SIZE)); in new()
1191 let guard_size = Self::GUARD_PAGES_NUM * MMArch::PAGE_SIZE; in new()
1320 return self.mapped_size - Self::GUARD_PAGES_NUM * MMArch::PAGE_SIZE; in stack_size()