Home
last modified time | relevance | path

Searched refs:VmFlags (Results 1 – 10 of 10) sorted by relevance

/DragonOS/kernel/src/mm/
H A Dmadvise.rs5 use super::{page::Flusher, syscall::MadvFlags, ucontext::LockedVMA, VmFlags};
43 new_flags = new_flags & !VmFlags::VM_RAND_READ & !VmFlags::VM_SEQ_READ in do_madvise()
47 new_flags = (new_flags & !VmFlags::VM_RAND_READ) | VmFlags::VM_SEQ_READ in do_madvise()
50 new_flags = (new_flags & !VmFlags::VM_SEQ_READ) | VmFlags::VM_RAND_READ in do_madvise()
53 MadvFlags::MADV_DONTFORK => new_flags |= VmFlags::VM_DONTCOPY, in do_madvise()
56 if vma.vm_flags().contains(VmFlags::VM_IO) { in do_madvise()
59 new_flags &= !VmFlags::VM_DONTCOPY; in do_madvise()
64 new_flags |= VmFlags::VM_WIPEONFORK; in do_madvise()
67 MadvFlags::MADV_KEEPONFORK => new_flags &= !VmFlags::VM_WIPEONFORK, in do_madvise()
69 MadvFlags::MADV_DONTDUMP => new_flags |= VmFlags::VM_DONTDUMP, in do_madvise()
[all …]
H A Dsyscall.rs19 verify_area, MsFlags, VirtAddr, VmFlags,
142 impl From<MapFlags> for VmFlags { implementation
144 let mut vm_flags = VmFlags::VM_NONE; in from()
147 vm_flags |= VmFlags::VM_GROWSDOWN; in from()
151 vm_flags |= VmFlags::VM_LOCKED; in from()
155 vm_flags |= VmFlags::VM_SYNC; in from()
159 vm_flags |= VmFlags::VM_SHARED; in from()
166 impl From<ProtFlags> for VmFlags { implementation
168 let mut vm_flags = VmFlags::VM_NONE; in from()
171 vm_flags |= VmFlags::VM_READ; in from()
[all …]
H A Dmod.rs44 pub struct VmFlags:usize{
107 impl core::ops::Index<VmFlags> for [usize] {
110 fn index(&self, index: VmFlags) -> &Self::Output { in index()
115 impl core::ops::IndexMut<VmFlags> for [usize] {
116 fn index_mut(&mut self, index: VmFlags) -> &mut Self::Output { in index_mut()
681 fn vm_get_page_prot(vm_flags: VmFlags) -> EntryFlags<Self> { in vm_get_page_prot()
685 VmFlags::VM_READ | VmFlags::VM_WRITE | VmFlags::VM_EXEC | VmFlags::VM_SHARED, in vm_get_page_prot()
H A Ducontext.rs40 MemoryManagementArch, PageTableKind, VirtAddr, VirtRegion, VmFlags,
427 VmFlags, in mmap() argument
459 let vm_flags = VmFlags::from(prot_flags) in mmap()
460 | VmFlags::from(map_flags) in mmap()
461 | VmFlags::VM_MAYREAD in mmap()
462 | VmFlags::VM_MAYWRITE in mmap()
463 | VmFlags::VM_MAYEXEC; in mmap()
515 vm_flags: VmFlags, in mremap() argument
657 r_guard.set_vm_flags(VmFlags::from(prot_flags)); in mprotect()
1187 .contains(VmFlags::VM_SHARED | VmFlags::VM_WRITE) in unmap()
[all …]
H A Dfault.rs16 VirtAddr, VmFaultReason, VmFlags,
144 if unlikely(vm_flags.contains(VmFlags::VM_HUGETLB)) { in handle_mm_fault()
280 .contains(VmFlags::VM_SHARED) in do_fault()
448 if vma.lock().vm_flags().contains(VmFlags::VM_SHARED) { in do_wp_page()
704 && !vma_guard.vm_flags().contains(VmFlags::VM_SHARED) in finish_fault()
H A Dpage.rs811 let vm_flags = super::VmFlags::from(prot_flags); in from_prot_flags()
/DragonOS/kernel/src/arch/riscv64/mm/
H A Dmod.rs17 MemoryManagementArch, PageTableKind, PhysAddr, VirtAddr, VmFlags,
291 map[VmFlags::VM_NONE.bits()] = MMArch::PAGE_NONE;
292 map[VmFlags::VM_READ.bits()] = MMArch::PAGE_READONLY;
293 map[VmFlags::VM_WRITE.bits()] = MMArch::PAGE_COPY;
294 map[VmFlags::VM_WRITE.bits() | VmFlags::VM_READ.bits()] = MMArch::PAGE_COPY;
295 map[VmFlags::VM_EXEC.bits()] = MMArch::PAGE_READONLY_EXEC;
296 map[VmFlags::VM_EXEC.bits() | VmFlags::VM_READ.bits()] = MMArch::PAGE_READONLY_EXEC;
297 map[VmFlags::VM_EXEC.bits() | VmFlags::VM_WRITE.bits()] = MMArch::PAGE_COPY_EXEC;
298 map[VmFlags::VM_EXEC.bits() | VmFlags::VM_WRITE.bits() | VmFlags::VM_READ.bits()] =
300 map[VmFlags::VM_SHARED.bits()] = MMArch::PAGE_NONE;
[all …]
/DragonOS/kernel/src/arch/x86_64/mm/
H A Dmod.rs30 use crate::mm::{MemoryManagementArch, PageTableKind, PhysAddr, VirtAddr, VmFlags};
386 map[VmFlags::VM_NONE.bits()] = EntryFlags::from_data(MMArch::PAGE_NONE);
387 map[VmFlags::VM_READ.bits()] = EntryFlags::from_data(MMArch::PAGE_READONLY);
388 map[VmFlags::VM_WRITE.bits()] = EntryFlags::from_data(MMArch::PAGE_COPY);
389 map[VmFlags::VM_WRITE.bits() | VmFlags::VM_READ.bits()] =
391 map[VmFlags::VM_EXEC.bits()] = EntryFlags::from_data(MMArch::PAGE_READONLY_EXEC);
392 map[VmFlags::VM_EXEC.bits() | VmFlags::VM_READ.bits()] =
394 map[VmFlags::VM_EXEC.bits() | VmFlags::VM_WRITE.bits()] =
396 map[VmFlags::VM_EXEC.bits() | VmFlags::VM_WRITE.bits() | VmFlags::VM_READ.bits()] =
398 map[VmFlags::VM_SHARED.bits()] = EntryFlags::from_data(MMArch::PAGE_NONE);
[all …]
H A Dfault.rs22 VirtAddr, VmFaultReason, VmFlags,
54 if unlikely(!vm_flags.contains(VmFlags::VM_WRITE)) { in vma_access_error()
258 if vm_flags.contains(VmFlags::VM_GROWSDOWN) { in do_user_addr_fault()
/DragonOS/kernel/src/ipc/
H A Dsyscall.rs26 VirtAddr, VmFlags,
325 let vm_flags = VmFlags::from(shmflg); in shmat()