From 9c7fd8fef5f6f52c231ea805a6189b4a18c4d6d0 Mon Sep 17 00:00:00 2001 From: Chen Chengjun Date: Fri, 16 Aug 2024 13:16:54 +0800 Subject: [PATCH] Add dummy msync --- kernel/aster-nix/src/syscall/arch/x86.rs | 2 ++ kernel/aster-nix/src/syscall/mod.rs | 1 + kernel/aster-nix/src/syscall/msync.rs | 9 +++++++++ 3 files changed, 12 insertions(+) create mode 100644 kernel/aster-nix/src/syscall/msync.rs diff --git a/kernel/aster-nix/src/syscall/arch/x86.rs b/kernel/aster-nix/src/syscall/arch/x86.rs index 249343a7e..fddd71107 100644 --- a/kernel/aster-nix/src/syscall/arch/x86.rs +++ b/kernel/aster-nix/src/syscall/arch/x86.rs @@ -60,6 +60,7 @@ use crate::syscall::{ mmap::sys_mmap, mount::sys_mount, mprotect::sys_mprotect, + msync::sys_msync, munmap::sys_munmap, nanosleep::{sys_clock_nanosleep, sys_nanosleep}, open::{sys_creat, sys_open, sys_openat}, @@ -154,6 +155,7 @@ impl_syscall_nums_and_dispatch_fn! { SYS_ACCESS = 21 => sys_access(args[..2]); SYS_PIPE = 22 => sys_pipe(args[..1]); SYS_SELECT = 23 => sys_select(args[..5]); + SYS_MSYNC = 26 => sys_msync(args[..3]); SYS_SCHED_YIELD = 24 => sys_sched_yield(args[..0]); SYS_MADVISE = 28 => sys_madvise(args[..3]); SYS_DUP = 32 => sys_dup(args[..1]); diff --git a/kernel/aster-nix/src/syscall/mod.rs b/kernel/aster-nix/src/syscall/mod.rs index ce21d559f..42d68c229 100644 --- a/kernel/aster-nix/src/syscall/mod.rs +++ b/kernel/aster-nix/src/syscall/mod.rs @@ -67,6 +67,7 @@ mod mknod; mod mmap; mod mount; mod mprotect; +mod msync; mod munmap; mod nanosleep; mod open; diff --git a/kernel/aster-nix/src/syscall/msync.rs b/kernel/aster-nix/src/syscall/msync.rs new file mode 100644 index 000000000..b0ed49179 --- /dev/null +++ b/kernel/aster-nix/src/syscall/msync.rs @@ -0,0 +1,9 @@ +// SPDX-License-Identifier: MPL-2.0 + +use super::SyscallReturn; +use crate::prelude::*; + +pub fn sys_msync(_start: Vaddr, _size: usize, _flag: i32, _ctx: &Context) -> Result { + // TODO: implement real `msync`. + Ok(SyscallReturn::Return(0)) +}