diff --git a/src/libos/src/syscall/consts.rs b/src/libos/src/syscall/consts.rs new file mode 100644 index 00000000..781059d1 --- /dev/null +++ b/src/libos/src/syscall/consts.rs @@ -0,0 +1,330 @@ +//! Syscall numbers + +pub const SYS_READ: u32 = 0; +pub const SYS_WRITE: u32 = 1; +pub const SYS_OPEN: u32 = 2; +pub const SYS_CLOSE: u32 = 3; +pub const SYS_STAT: u32 = 4; +pub const SYS_FSTAT: u32 = 5; +pub const SYS_LSTAT: u32 = 6; +pub const SYS_POLL: u32 = 7; +pub const SYS_LSEEK: u32 = 8; +pub const SYS_MMAP: u32 = 9; +pub const SYS_MPROTECT: u32 = 10; +pub const SYS_MUNMAP: u32 = 11; +pub const SYS_BRK: u32 = 12; +pub const SYS_RT_SIGACTION: u32 = 13; +pub const SYS_RT_SIGPROCMASK: u32 = 14; +pub const SYS_RT_SIGRETURN: u32 = 15; +pub const SYS_IOCTL: u32 = 16; +pub const SYS_PREAD64: u32 = 17; +pub const SYS_PWRITE64: u32 = 18; +pub const SYS_READV: u32 = 19; +pub const SYS_WRITEV: u32 = 20; +pub const SYS_ACCESS: u32 = 21; +pub const SYS_PIPE: u32 = 22; +pub const SYS_SELECT: u32 = 23; +pub const SYS_SCHED_YIELD: u32 = 24; +pub const SYS_MREMAP: u32 = 25; +pub const SYS_MSYNC: u32 = 26; +pub const SYS_MINCORE: u32 = 27; +pub const SYS_MADVISE: u32 = 28; +pub const SYS_SHMGET: u32 = 29; +pub const SYS_SHMAT: u32 = 30; +pub const SYS_SHMCTL: u32 = 31; +pub const SYS_DUP: u32 = 32; +pub const SYS_DUP2: u32 = 33; +pub const SYS_PAUSE: u32 = 34; +pub const SYS_NANOSLEEP: u32 = 35; +pub const SYS_GETITIMER: u32 = 36; +pub const SYS_ALARM: u32 = 37; +pub const SYS_SETITIMER: u32 = 38; +pub const SYS_GETPID: u32 = 39; +pub const SYS_SENDFILE: u32 = 40; +pub const SYS_SOCKET: u32 = 41; +pub const SYS_CONNECT: u32 = 42; +pub const SYS_ACCEPT: u32 = 43; +pub const SYS_SENDTO: u32 = 44; +pub const SYS_RECVFROM: u32 = 45; +pub const SYS_SENDMSG: u32 = 46; +pub const SYS_RECVMSG: u32 = 47; +pub const SYS_SHUTDOWN: u32 = 48; +pub const SYS_BIND: u32 = 49; +pub const SYS_LISTEN: u32 = 50; +pub const SYS_GETSOCKNAME: u32 = 51; +pub const SYS_GETPEERNAME: u32 = 52; +pub const SYS_SOCKETPAIR: u32 = 53; +pub const SYS_SETSOCKOPT: u32 = 54; +pub const SYS_GETSOCKOPT: u32 = 55; +pub const SYS_CLONE: u32 = 56; +pub const SYS_FORK: u32 = 57; +pub const SYS_VFORK: u32 = 58; +pub const SYS_EXECVE: u32 = 59; +pub const SYS_EXIT: u32 = 60; +pub const SYS_WAIT4: u32 = 61; +pub const SYS_KILL: u32 = 62; +pub const SYS_UNAME: u32 = 63; +pub const SYS_SEMGET: u32 = 64; +pub const SYS_SEMOP: u32 = 65; +pub const SYS_SEMCTL: u32 = 66; +pub const SYS_SHMDT: u32 = 67; +pub const SYS_MSGGET: u32 = 68; +pub const SYS_MSGSND: u32 = 69; +pub const SYS_MSGRCV: u32 = 70; +pub const SYS_MSGCTL: u32 = 71; +pub const SYS_FCNTL: u32 = 72; +pub const SYS_FLOCK: u32 = 73; +pub const SYS_FSYNC: u32 = 74; +pub const SYS_FDATASYNC: u32 = 75; +pub const SYS_TRUNCATE: u32 = 76; +pub const SYS_FTRUNCATE: u32 = 77; +pub const SYS_GETDENTS: u32 = 78; +pub const SYS_GETCWD: u32 = 79; +pub const SYS_CHDIR: u32 = 80; +pub const SYS_FCHDIR: u32 = 81; +pub const SYS_RENAME: u32 = 82; +pub const SYS_MKDIR: u32 = 83; +pub const SYS_RMDIR: u32 = 84; +pub const SYS_CREAT: u32 = 85; +pub const SYS_LINK: u32 = 86; +pub const SYS_UNLINK: u32 = 87; +pub const SYS_SYMLINK: u32 = 88; +pub const SYS_READLINK: u32 = 89; +pub const SYS_CHMOD: u32 = 90; +pub const SYS_FCHMOD: u32 = 91; +pub const SYS_CHOWN: u32 = 92; +pub const SYS_FCHOWN: u32 = 93; +pub const SYS_LCHOWN: u32 = 94; +pub const SYS_UMASK: u32 = 95; +pub const SYS_GETTIMEOFDAY: u32 = 96; +pub const SYS_GETRLIMIT: u32 = 97; +pub const SYS_GETRUSAGE: u32 = 98; +pub const SYS_SYSINFO: u32 = 99; +pub const SYS_TIMES: u32 = 100; +pub const SYS_PTRACE: u32 = 101; +pub const SYS_GETUID: u32 = 102; +pub const SYS_SYSLOG: u32 = 103; +pub const SYS_GETGID: u32 = 104; +pub const SYS_SETUID: u32 = 105; +pub const SYS_SETGID: u32 = 106; +pub const SYS_GETEUID: u32 = 107; +pub const SYS_GETEGID: u32 = 108; +pub const SYS_SETPGID: u32 = 109; +pub const SYS_GETPPID: u32 = 110; +pub const SYS_GETPGRP: u32 = 111; +pub const SYS_SETSID: u32 = 112; +pub const SYS_SETREUID: u32 = 113; +pub const SYS_SETREGID: u32 = 114; +pub const SYS_GETGROUPS: u32 = 115; +pub const SYS_SETGROUPS: u32 = 116; +pub const SYS_SETRESUID: u32 = 117; +pub const SYS_GETRESUID: u32 = 118; +pub const SYS_SETRESGID: u32 = 119; +pub const SYS_GETRESGID: u32 = 120; +pub const SYS_GETPGID: u32 = 121; +pub const SYS_SETFSUID: u32 = 122; +pub const SYS_SETFSGID: u32 = 123; +pub const SYS_GETSID: u32 = 124; +pub const SYS_CAPGET: u32 = 125; +pub const SYS_CAPSET: u32 = 126; +pub const SYS_RT_SIGPENDING: u32 = 127; +pub const SYS_RT_SIGTIMEDWAIT: u32 = 128; +pub const SYS_RT_SIGQUEUEINFO: u32 = 129; +pub const SYS_RT_SIGSUSPEND: u32 = 130; +pub const SYS_SIGALTSTACK: u32 = 131; +pub const SYS_UTIME: u32 = 132; +pub const SYS_MKNOD: u32 = 133; +pub const SYS_USELIB: u32 = 134; +pub const SYS_PERSONALITY: u32 = 135; +pub const SYS_USTAT: u32 = 136; +pub const SYS_STATFS: u32 = 137; +pub const SYS_FSTATFS: u32 = 138; +pub const SYS_SYSFS: u32 = 139; +pub const SYS_GETPRIORITY: u32 = 140; +pub const SYS_SETPRIORITY: u32 = 141; +pub const SYS_SCHED_SETPARAM: u32 = 142; +pub const SYS_SCHED_GETPARAM: u32 = 143; +pub const SYS_SCHED_SETSCHEDULER: u32 = 144; +pub const SYS_SCHED_GETSCHEDULER: u32 = 145; +pub const SYS_SCHED_GET_PRIORITY_MAX: u32 = 146; +pub const SYS_SCHED_GET_PRIORITY_MIN: u32 = 147; +pub const SYS_SCHED_RR_GET_INTERVAL: u32 = 148; +pub const SYS_MLOCK: u32 = 149; +pub const SYS_MUNLOCK: u32 = 150; +pub const SYS_MLOCKALL: u32 = 151; +pub const SYS_MUNLOCKALL: u32 = 152; +pub const SYS_VHANGUP: u32 = 153; +pub const SYS_MODIFY_LDT: u32 = 154; +pub const SYS_PIVOT_ROOT: u32 = 155; +pub const SYS__SYSCTL: u32 = 156; +pub const SYS_PRCTL: u32 = 157; +pub const SYS_ARCH_PRCTL: u32 = 158; +pub const SYS_ADJTIMEX: u32 = 159; +pub const SYS_SETRLIMIT: u32 = 160; +pub const SYS_CHROOT: u32 = 161; +pub const SYS_SYNC: u32 = 162; +pub const SYS_ACCT: u32 = 163; +pub const SYS_SETTIMEOFDAY: u32 = 164; +pub const SYS_MOUNT: u32 = 165; +pub const SYS_UMOUNT2: u32 = 166; +pub const SYS_SWAPON: u32 = 167; +pub const SYS_SWAPOFF: u32 = 168; +pub const SYS_REBOOT: u32 = 169; +pub const SYS_SETHOSTNAME: u32 = 170; +pub const SYS_SETDOMAINNAME: u32 = 171; +pub const SYS_IOPL: u32 = 172; +pub const SYS_IOPERM: u32 = 173; +pub const SYS_CREATE_MODULE: u32 = 174; +pub const SYS_INIT_MODULE: u32 = 175; +pub const SYS_DELETE_MODULE: u32 = 176; +pub const SYS_GET_KERNEL_SYMS: u32 = 177; +pub const SYS_QUERY_MODULE: u32 = 178; +pub const SYS_QUOTACTL: u32 = 179; +pub const SYS_NFSSERVCTL: u32 = 180; +pub const SYS_GETPMSG: u32 = 181; +pub const SYS_PUTPMSG: u32 = 182; +pub const SYS_AFS_SYSCALL: u32 = 183; +pub const SYS_TUXCALL: u32 = 184; +pub const SYS_SECURITY: u32 = 185; +pub const SYS_GETTID: u32 = 186; +pub const SYS_READAHEAD: u32 = 187; +pub const SYS_SETXATTR: u32 = 188; +pub const SYS_LSETXATTR: u32 = 189; +pub const SYS_FSETXATTR: u32 = 190; +pub const SYS_GETXATTR: u32 = 191; +pub const SYS_LGETXATTR: u32 = 192; +pub const SYS_FGETXATTR: u32 = 193; +pub const SYS_LISTXATTR: u32 = 194; +pub const SYS_LLISTXATTR: u32 = 195; +pub const SYS_FLISTXATTR: u32 = 196; +pub const SYS_REMOVEXATTR: u32 = 197; +pub const SYS_LREMOVEXATTR: u32 = 198; +pub const SYS_FREMOVEXATTR: u32 = 199; +pub const SYS_TKILL: u32 = 200; +pub const SYS_TIME: u32 = 201; +pub const SYS_FUTEX: u32 = 202; +pub const SYS_SCHED_SETAFFINITY: u32 = 203; +pub const SYS_SCHED_GETAFFINITY: u32 = 204; +pub const SYS_SET_THREAD_AREA: u32 = 205; +pub const SYS_IO_SETUP: u32 = 206; +pub const SYS_IO_DESTROY: u32 = 207; +pub const SYS_IO_GETEVENTS: u32 = 208; +pub const SYS_IO_SUBMIT: u32 = 209; +pub const SYS_IO_CANCEL: u32 = 210; +pub const SYS_GET_THREAD_AREA: u32 = 211; +pub const SYS_LOOKUP_DCOOKIE: u32 = 212; +pub const SYS_EPOLL_CREATE: u32 = 213; +pub const SYS_EPOLL_CTL_OLD: u32 = 214; +pub const SYS_EPOLL_WAIT_OLD: u32 = 215; +pub const SYS_REMAP_FILE_PAGES: u32 = 216; +pub const SYS_GETDENTS64: u32 = 217; +pub const SYS_SET_TID_ADDRESS: u32 = 218; +pub const SYS_RESTART_SYSCALL: u32 = 219; +pub const SYS_SEMTIMEDOP: u32 = 220; +pub const SYS_FADVISE64: u32 = 221; +pub const SYS_TIMER_CREATE: u32 = 222; +pub const SYS_TIMER_SETTIME: u32 = 223; +pub const SYS_TIMER_GETTIME: u32 = 224; +pub const SYS_TIMER_GETOVERRUN: u32 = 225; +pub const SYS_TIMER_DELETE: u32 = 226; +pub const SYS_CLOCK_SETTIME: u32 = 227; +pub const SYS_CLOCK_GETTIME: u32 = 228; +pub const SYS_CLOCK_GETRES: u32 = 229; +pub const SYS_CLOCK_NANOSLEEP: u32 = 230; +pub const SYS_EXIT_GROUP: u32 = 231; +pub const SYS_EPOLL_WAIT: u32 = 232; +pub const SYS_EPOLL_CTL: u32 = 233; +pub const SYS_TGKILL: u32 = 234; +pub const SYS_UTIMES: u32 = 235; +pub const SYS_VSERVER: u32 = 236; +pub const SYS_MBIND: u32 = 237; +pub const SYS_SET_MEMPOLICY: u32 = 238; +pub const SYS_GET_MEMPOLICY: u32 = 239; +pub const SYS_MQ_OPEN: u32 = 240; +pub const SYS_MQ_UNLINK: u32 = 241; +pub const SYS_MQ_TIMEDSEND: u32 = 242; +pub const SYS_MQ_TIMEDRECEIVE: u32 = 243; +pub const SYS_MQ_NOTIFY: u32 = 244; +pub const SYS_MQ_GETSETATTR: u32 = 245; +pub const SYS_KEXEC_LOAD: u32 = 246; +pub const SYS_WAITID: u32 = 247; +pub const SYS_ADD_KEY: u32 = 248; +pub const SYS_REQUEST_KEY: u32 = 249; +pub const SYS_KEYCTL: u32 = 250; +pub const SYS_IOPRIO_SET: u32 = 251; +pub const SYS_IOPRIO_GET: u32 = 252; +pub const SYS_INOTIFY_INIT: u32 = 253; +pub const SYS_INOTIFY_ADD_WATCH: u32 = 254; +pub const SYS_INOTIFY_RM_WATCH: u32 = 255; +pub const SYS_MIGRATE_PAGES: u32 = 256; +pub const SYS_OPENAT: u32 = 257; +pub const SYS_MKDIRAT: u32 = 258; +pub const SYS_MKNODAT: u32 = 259; +pub const SYS_FCHOWNAT: u32 = 260; +pub const SYS_FUTIMESAT: u32 = 261; +pub const SYS_NEWFSTATAT: u32 = 262; +pub const SYS_UNLINKAT: u32 = 263; +pub const SYS_RENAMEAT: u32 = 264; +pub const SYS_LINKAT: u32 = 265; +pub const SYS_SYMLINKAT: u32 = 266; +pub const SYS_READLINKAT: u32 = 267; +pub const SYS_FCHMODAT: u32 = 268; +pub const SYS_FACCESSAT: u32 = 269; +pub const SYS_PSELECT6: u32 = 270; +pub const SYS_PPOLL: u32 = 271; +pub const SYS_UNSHARE: u32 = 272; +pub const SYS_SET_ROBUST_LIST: u32 = 273; +pub const SYS_GET_ROBUST_LIST: u32 = 274; +pub const SYS_SPLICE: u32 = 275; +pub const SYS_TEE: u32 = 276; +pub const SYS_SYNC_FILE_RANGE: u32 = 277; +pub const SYS_VMSPLICE: u32 = 278; +pub const SYS_MOVE_PAGES: u32 = 279; +pub const SYS_UTIMENSAT: u32 = 280; +pub const SYS_EPOLL_PWAIT: u32 = 281; +pub const SYS_SIGNALFD: u32 = 282; +pub const SYS_TIMERFD_CREATE: u32 = 283; +pub const SYS_EVENTFD: u32 = 284; +pub const SYS_FALLOCATE: u32 = 285; +pub const SYS_TIMERFD_SETTIME: u32 = 286; +pub const SYS_TIMERFD_GETTIME: u32 = 287; +pub const SYS_ACCEPT4: u32 = 288; +pub const SYS_SIGNALFD4: u32 = 289; +pub const SYS_EVENTFD2: u32 = 290; +pub const SYS_EPOLL_CREATE1: u32 = 291; +pub const SYS_DUP3: u32 = 292; +pub const SYS_PIPE2: u32 = 293; +pub const SYS_INOTIFY_INIT1: u32 = 294; +pub const SYS_PREADV: u32 = 295; +pub const SYS_PWRITEV: u32 = 296; +pub const SYS_RT_TGSIGQUEUEINFO: u32 = 297; +pub const SYS_PERF_EVENT_OPEN: u32 = 298; +pub const SYS_RECVMMSG: u32 = 299; +pub const SYS_FANOTIFY_INIT: u32 = 300; +pub const SYS_FANOTIFY_MARK: u32 = 301; +pub const SYS_PRLIMIT64: u32 = 302; +pub const SYS_NAME_TO_HANDLE_AT: u32 = 303; +pub const SYS_OPEN_BY_HANDLE_AT: u32 = 304; +pub const SYS_CLOCK_ADJTIME: u32 = 305; +pub const SYS_SYNCFS: u32 = 306; +pub const SYS_SENDMMSG: u32 = 307; +pub const SYS_SETNS: u32 = 308; +pub const SYS_GETCPU: u32 = 309; +pub const SYS_PROCESS_VM_READV: u32 = 310; +pub const SYS_PROCESS_VM_WRITEV: u32 = 311; +pub const SYS_KCMP: u32 = 312; +pub const SYS_FINIT_MODULE: u32 = 313; +pub const SYS_SCHED_SETATTR: u32 = 314; +pub const SYS_SCHED_GETATTR: u32 = 315; +pub const SYS_RENAMEAT2: u32 = 316; +pub const SYS_SECCOMP: u32 = 317; +pub const SYS_GETRANDOM: u32 = 318; +pub const SYS_MEMFD_CREATE: u32 = 319; +pub const SYS_KEXEC_FILE_LOAD: u32 = 320; +pub const SYS_BPF: u32 = 321; +pub const SYS_EXECVEAT: u32 = 322; +pub const SYS_USERFAULTFD: u32 = 323; +pub const SYS_MEMBARRIER: u32 = 324; +pub const SYS_MLOCK2: u32 = 325; + +pub const SYS_SPAWN: u32 = 360; diff --git a/src/libos/src/syscall/mod.rs b/src/libos/src/syscall/mod.rs index 62eeabed..27d2431c 100644 --- a/src/libos/src/syscall/mod.rs +++ b/src/libos/src/syscall/mod.rs @@ -12,9 +12,13 @@ use {fs, process, std, vm}; //use std::libc_fs as fs; //use std::libc_io as io; +use self::consts::*; use fs::File; +mod consts; + #[no_mangle] +#[deny(unreachable_patterns)] pub extern "C" fn dispatch_syscall( num: u32, arg0: isize, @@ -26,37 +30,37 @@ pub extern "C" fn dispatch_syscall( ) -> isize { debug!("syscall {}: {:#x}, {:#x}, {:#x}, {:#x}, {:#x}, {:#x}", num, arg0, arg1, arg2, arg3, arg4, arg5); let ret = match num { - 002 => do_open(arg0 as *const i8, arg1 as u32, arg2 as u32), - 003 => do_close(arg0 as FileDesc), - 000 => do_read(arg0 as FileDesc, arg1 as *mut u8, arg2 as usize), - 001 => do_write(arg0 as FileDesc, arg1 as *const u8, arg2 as usize), - 019 => do_readv(arg0 as FileDesc, arg1 as *mut iovec_t, arg2 as i32), - 020 => do_writev(arg0 as FileDesc, arg1 as *mut iovec_t, arg2 as i32), - 004 => do_stat(arg0 as *const i8, arg1 as *mut fs::Stat), - 005 => do_fstat(arg0 as FileDesc, arg1 as *mut fs::Stat), - 006 => do_lstat(arg0 as *const i8, arg1 as *mut fs::Stat), - 008 => do_lseek(arg0 as FileDesc, arg1 as off_t, arg2 as i32), - 074 => do_fsync(arg0 as FileDesc), - 075 => do_fdatasync(arg0 as FileDesc), - 076 => do_truncate(arg0 as *const i8, arg1 as usize), - 077 => do_ftruncate(arg0 as FileDesc, arg1 as usize), - 217 => do_getdents64(arg0 as FileDesc, arg1 as *mut u8, arg2 as usize), - 162 => do_sync(), - 079 => do_getcwd(arg0 as *mut u8, arg1 as usize), + SYS_OPEN => do_open(arg0 as *const i8, arg1 as u32, arg2 as u32), + SYS_CLOSE => do_close(arg0 as FileDesc), + SYS_READ => do_read(arg0 as FileDesc, arg1 as *mut u8, arg2 as usize), + SYS_WRITE => do_write(arg0 as FileDesc, arg1 as *const u8, arg2 as usize), + SYS_READV => do_readv(arg0 as FileDesc, arg1 as *mut iovec_t, arg2 as i32), + SYS_WRITEV => do_writev(arg0 as FileDesc, arg1 as *mut iovec_t, arg2 as i32), + SYS_STAT => do_stat(arg0 as *const i8, arg1 as *mut fs::Stat), + SYS_FSTAT => do_fstat(arg0 as FileDesc, arg1 as *mut fs::Stat), + SYS_LSTAT => do_lstat(arg0 as *const i8, arg1 as *mut fs::Stat), + SYS_LSEEK => do_lseek(arg0 as FileDesc, arg1 as off_t, arg2 as i32), + SYS_FSYNC => do_fsync(arg0 as FileDesc), + SYS_FDATASYNC => do_fdatasync(arg0 as FileDesc), + SYS_TRUNCATE => do_truncate(arg0 as *const i8, arg1 as usize), + SYS_FTRUNCATE => do_ftruncate(arg0 as FileDesc, arg1 as usize), + SYS_GETDENTS64 => do_getdents64(arg0 as FileDesc, arg1 as *mut u8, arg2 as usize), + SYS_SYNC => do_sync(), + SYS_GETCWD => do_getcwd(arg0 as *mut u8, arg1 as usize), - 060 => do_exit(arg0 as i32), - 360 => do_spawn( + SYS_EXIT => do_exit(arg0 as i32), + SYS_SPAWN => do_spawn( arg0 as *mut u32, arg1 as *mut i8, arg2 as *const *const i8, arg3 as *const *const i8, arg4 as *const FdOp, ), - 061 => do_wait4(arg0 as i32, arg1 as *mut i32), - 039 => do_getpid(), - 110 => do_getppid(), + SYS_WAIT4 => do_wait4(arg0 as i32, arg1 as *mut i32), + SYS_GETPID => do_getpid(), + SYS_GETPPID => do_getppid(), - 009 => do_mmap( + SYS_MMAP => do_mmap( arg0 as usize, arg1 as usize, arg2 as i32, @@ -64,23 +68,23 @@ pub extern "C" fn dispatch_syscall( arg4 as FileDesc, arg5 as off_t, ), - 011 => do_munmap(arg0 as usize, arg1 as usize), - 025 => do_mremap( + SYS_MUNMAP => do_munmap(arg0 as usize, arg1 as usize), + SYS_MREMAP => do_mremap( arg0 as usize, arg1 as usize, arg2 as usize, arg3 as i32, arg4 as usize, ), - 012 => do_brk(arg0 as usize), + SYS_BRK => do_brk(arg0 as usize), - 022 => do_pipe2(arg0 as *mut i32, 0), - 293 => do_pipe2(arg0 as *mut i32, arg1 as u32), - 032 => do_dup(arg0 as FileDesc), - 033 => do_dup2(arg0 as FileDesc, arg1 as FileDesc), - 292 => do_dup3(arg0 as FileDesc, arg1 as FileDesc, arg2 as u32), + SYS_PIPE => do_pipe2(arg0 as *mut i32, 0), + SYS_PIPE2 => do_pipe2(arg0 as *mut i32, arg1 as u32), + SYS_DUP => do_dup(arg0 as FileDesc), + SYS_DUP2 => do_dup2(arg0 as FileDesc, arg1 as FileDesc), + SYS_DUP3 => do_dup3(arg0 as FileDesc, arg1 as FileDesc, arg2 as u32), - 096 => do_gettimeofday(arg0 as *mut timeval_t), + SYS_GETTIMEOFDAY => do_gettimeofday(arg0 as *mut timeval_t), _ => do_unknown(num), }; @@ -174,13 +178,11 @@ fn do_open(path: *const i8, flags: u32, mode: u32) -> Result { } fn do_close(fd: FileDesc) -> Result { - info!("close: fd: {}", fd); fs::do_close(fd)?; Ok(0) } fn do_read(fd: FileDesc, buf: *mut u8, size: usize) -> Result { - info!("write: fd: {}, buf: {:?}, size: {}", fd, buf, size); let safe_buf = { check_mut_array(buf, size)?; unsafe { std::slice::from_raw_parts_mut(buf, size) } @@ -190,7 +192,6 @@ fn do_read(fd: FileDesc, buf: *mut u8, size: usize) -> Result { } fn do_write(fd: FileDesc, buf: *const u8, size: usize) -> Result { - info!("write: fd: {}, buf: {:?}, size: {}", fd, buf, size); let safe_buf = { check_array(buf, size)?; unsafe { std::slice::from_raw_parts(buf, size) } @@ -404,7 +405,6 @@ fn do_wait4(pid: i32, _exit_status: *mut i32) -> Result { } fn do_getpid() -> Result { - info!("getpid"); let pid = process::do_getpid(); Ok(pid as isize) } @@ -454,7 +454,6 @@ fn do_gettimeofday(tv_u: *mut timeval_t) -> Result { const MAP_FAILED: *const c_void = ((-1) as i64) as *const c_void; fn do_exit(status: i32) -> ! { - info!("exit: {}", status); extern "C" { fn do_exit_task() -> !; } @@ -465,7 +464,9 @@ fn do_exit(status: i32) -> ! { } fn do_unknown(num: u32) -> Result { - warn!("Unknown syscall (num = {})", num); + if cfg!(debug_assertions) { + //println!("[WARNING] Unknown syscall (num = {})", num); + } Err(Error::new(ENOSYS, "Unknown syscall")) }