diff --git a/kernel/aster-nix/src/syscall/madvise.rs b/kernel/aster-nix/src/syscall/madvise.rs index 8254a1e95..28666a00b 100644 --- a/kernel/aster-nix/src/syscall/madvise.rs +++ b/kernel/aster-nix/src/syscall/madvise.rs @@ -17,23 +17,14 @@ pub fn sys_madvise(start: Vaddr, len: usize, behavior: i32) -> Result madv_dontneed(start, len)?, + MadviseBehavior::MADV_DONTNEED => { + warn!("MADV_DONTNEED isn't implemented, do nothing for now."); + } _ => todo!(), } Ok(SyscallReturn::Return(0)) } -fn madv_dontneed(start: Vaddr, len: usize) -> Result<()> { - debug_assert!(start % PAGE_SIZE == 0); - debug_assert!(len % PAGE_SIZE == 0); - let current = current!(); - let root_vmar = current.root_vmar(); - let advised_range = start..start + len; - // `destroy()` interface may require adjustment and replacement afterwards. - let _ = root_vmar.destroy(advised_range); - Ok(()) -} - #[repr(i32)] #[derive(Debug, Clone, Copy, TryFromInt)] #[allow(non_camel_case_types)]