diff --git a/kernel/src/syscall/fs.rs b/kernel/src/syscall/fs.rs index aa2c49c9..e406c2fc 100644 --- a/kernel/src/syscall/fs.rs +++ b/kernel/src/syscall/fs.rs @@ -147,6 +147,18 @@ impl Syscall<'_> { }) } + pub fn sys_pselect6( + &mut self, + nfds: usize, + read: *mut u32, + write: *mut u32, + err: *mut u32, + timeout: *const TimeVal, + _sigset: *const u32, + ) -> SysResult { + self.sys_select(nfds, read, write, err, timeout) + } + pub fn sys_select( &mut self, nfds: usize, diff --git a/kernel/src/syscall/mod.rs b/kernel/src/syscall/mod.rs index b07caf78..f0d20bfa 100644 --- a/kernel/src/syscall/mod.rs +++ b/kernel/src/syscall/mod.rs @@ -154,6 +154,14 @@ impl Syscall<'_> { ), // io multiplexing + SYS_PSELECT6 => self.sys_pselect6( + args[0], + args[1] as *mut u32, + args[2] as *mut u32, + args[3] as *mut u32, + args[4] as *const TimeVal, + args[5] as *const u32, + ), SYS_PPOLL => { self.sys_ppoll(args[0] as *mut PollFd, args[1], args[2] as *const TimeSpec) } // ignore sigmask