Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v2.6.18-rc6 1259 lines 48 kB view raw
1/* 2 * This file is subject to the terms and conditions of the GNU General Public 3 * License. See the file "COPYING" in the main directory of this archive 4 * for more details. 5 * 6 * Copyright (C) 1995, 96, 97, 98, 99, 2000 by Ralf Baechle 7 * Copyright (C) 1999, 2000 Silicon Graphics, Inc. 8 * 9 * Changed system calls macros _syscall5 - _syscall7 to push args 5 to 7 onto 10 * the stack. Robin Farine for ACN S.A, Copyright (C) 1996 by ACN S.A 11 */ 12#ifndef _ASM_UNISTD_H 13#define _ASM_UNISTD_H 14 15#include <asm/sgidefs.h> 16 17#if _MIPS_SIM == _MIPS_SIM_ABI32 18 19/* 20 * Linux o32 style syscalls are in the range from 4000 to 4999. 21 */ 22#define __NR_Linux 4000 23#define __NR_syscall (__NR_Linux + 0) 24#define __NR_exit (__NR_Linux + 1) 25#define __NR_fork (__NR_Linux + 2) 26#define __NR_read (__NR_Linux + 3) 27#define __NR_write (__NR_Linux + 4) 28#define __NR_open (__NR_Linux + 5) 29#define __NR_close (__NR_Linux + 6) 30#define __NR_waitpid (__NR_Linux + 7) 31#define __NR_creat (__NR_Linux + 8) 32#define __NR_link (__NR_Linux + 9) 33#define __NR_unlink (__NR_Linux + 10) 34#define __NR_execve (__NR_Linux + 11) 35#define __NR_chdir (__NR_Linux + 12) 36#define __NR_time (__NR_Linux + 13) 37#define __NR_mknod (__NR_Linux + 14) 38#define __NR_chmod (__NR_Linux + 15) 39#define __NR_lchown (__NR_Linux + 16) 40#define __NR_break (__NR_Linux + 17) 41#define __NR_unused18 (__NR_Linux + 18) 42#define __NR_lseek (__NR_Linux + 19) 43#define __NR_getpid (__NR_Linux + 20) 44#define __NR_mount (__NR_Linux + 21) 45#define __NR_umount (__NR_Linux + 22) 46#define __NR_setuid (__NR_Linux + 23) 47#define __NR_getuid (__NR_Linux + 24) 48#define __NR_stime (__NR_Linux + 25) 49#define __NR_ptrace (__NR_Linux + 26) 50#define __NR_alarm (__NR_Linux + 27) 51#define __NR_unused28 (__NR_Linux + 28) 52#define __NR_pause (__NR_Linux + 29) 53#define __NR_utime (__NR_Linux + 30) 54#define __NR_stty (__NR_Linux + 31) 55#define __NR_gtty (__NR_Linux + 32) 56#define __NR_access (__NR_Linux + 33) 57#define __NR_nice (__NR_Linux + 34) 58#define __NR_ftime (__NR_Linux + 35) 59#define __NR_sync (__NR_Linux + 36) 60#define __NR_kill (__NR_Linux + 37) 61#define __NR_rename (__NR_Linux + 38) 62#define __NR_mkdir (__NR_Linux + 39) 63#define __NR_rmdir (__NR_Linux + 40) 64#define __NR_dup (__NR_Linux + 41) 65#define __NR_pipe (__NR_Linux + 42) 66#define __NR_times (__NR_Linux + 43) 67#define __NR_prof (__NR_Linux + 44) 68#define __NR_brk (__NR_Linux + 45) 69#define __NR_setgid (__NR_Linux + 46) 70#define __NR_getgid (__NR_Linux + 47) 71#define __NR_signal (__NR_Linux + 48) 72#define __NR_geteuid (__NR_Linux + 49) 73#define __NR_getegid (__NR_Linux + 50) 74#define __NR_acct (__NR_Linux + 51) 75#define __NR_umount2 (__NR_Linux + 52) 76#define __NR_lock (__NR_Linux + 53) 77#define __NR_ioctl (__NR_Linux + 54) 78#define __NR_fcntl (__NR_Linux + 55) 79#define __NR_mpx (__NR_Linux + 56) 80#define __NR_setpgid (__NR_Linux + 57) 81#define __NR_ulimit (__NR_Linux + 58) 82#define __NR_unused59 (__NR_Linux + 59) 83#define __NR_umask (__NR_Linux + 60) 84#define __NR_chroot (__NR_Linux + 61) 85#define __NR_ustat (__NR_Linux + 62) 86#define __NR_dup2 (__NR_Linux + 63) 87#define __NR_getppid (__NR_Linux + 64) 88#define __NR_getpgrp (__NR_Linux + 65) 89#define __NR_setsid (__NR_Linux + 66) 90#define __NR_sigaction (__NR_Linux + 67) 91#define __NR_sgetmask (__NR_Linux + 68) 92#define __NR_ssetmask (__NR_Linux + 69) 93#define __NR_setreuid (__NR_Linux + 70) 94#define __NR_setregid (__NR_Linux + 71) 95#define __NR_sigsuspend (__NR_Linux + 72) 96#define __NR_sigpending (__NR_Linux + 73) 97#define __NR_sethostname (__NR_Linux + 74) 98#define __NR_setrlimit (__NR_Linux + 75) 99#define __NR_getrlimit (__NR_Linux + 76) 100#define __NR_getrusage (__NR_Linux + 77) 101#define __NR_gettimeofday (__NR_Linux + 78) 102#define __NR_settimeofday (__NR_Linux + 79) 103#define __NR_getgroups (__NR_Linux + 80) 104#define __NR_setgroups (__NR_Linux + 81) 105#define __NR_reserved82 (__NR_Linux + 82) 106#define __NR_symlink (__NR_Linux + 83) 107#define __NR_unused84 (__NR_Linux + 84) 108#define __NR_readlink (__NR_Linux + 85) 109#define __NR_uselib (__NR_Linux + 86) 110#define __NR_swapon (__NR_Linux + 87) 111#define __NR_reboot (__NR_Linux + 88) 112#define __NR_readdir (__NR_Linux + 89) 113#define __NR_mmap (__NR_Linux + 90) 114#define __NR_munmap (__NR_Linux + 91) 115#define __NR_truncate (__NR_Linux + 92) 116#define __NR_ftruncate (__NR_Linux + 93) 117#define __NR_fchmod (__NR_Linux + 94) 118#define __NR_fchown (__NR_Linux + 95) 119#define __NR_getpriority (__NR_Linux + 96) 120#define __NR_setpriority (__NR_Linux + 97) 121#define __NR_profil (__NR_Linux + 98) 122#define __NR_statfs (__NR_Linux + 99) 123#define __NR_fstatfs (__NR_Linux + 100) 124#define __NR_ioperm (__NR_Linux + 101) 125#define __NR_socketcall (__NR_Linux + 102) 126#define __NR_syslog (__NR_Linux + 103) 127#define __NR_setitimer (__NR_Linux + 104) 128#define __NR_getitimer (__NR_Linux + 105) 129#define __NR_stat (__NR_Linux + 106) 130#define __NR_lstat (__NR_Linux + 107) 131#define __NR_fstat (__NR_Linux + 108) 132#define __NR_unused109 (__NR_Linux + 109) 133#define __NR_iopl (__NR_Linux + 110) 134#define __NR_vhangup (__NR_Linux + 111) 135#define __NR_idle (__NR_Linux + 112) 136#define __NR_vm86 (__NR_Linux + 113) 137#define __NR_wait4 (__NR_Linux + 114) 138#define __NR_swapoff (__NR_Linux + 115) 139#define __NR_sysinfo (__NR_Linux + 116) 140#define __NR_ipc (__NR_Linux + 117) 141#define __NR_fsync (__NR_Linux + 118) 142#define __NR_sigreturn (__NR_Linux + 119) 143#define __NR_clone (__NR_Linux + 120) 144#define __NR_setdomainname (__NR_Linux + 121) 145#define __NR_uname (__NR_Linux + 122) 146#define __NR_modify_ldt (__NR_Linux + 123) 147#define __NR_adjtimex (__NR_Linux + 124) 148#define __NR_mprotect (__NR_Linux + 125) 149#define __NR_sigprocmask (__NR_Linux + 126) 150#define __NR_create_module (__NR_Linux + 127) 151#define __NR_init_module (__NR_Linux + 128) 152#define __NR_delete_module (__NR_Linux + 129) 153#define __NR_get_kernel_syms (__NR_Linux + 130) 154#define __NR_quotactl (__NR_Linux + 131) 155#define __NR_getpgid (__NR_Linux + 132) 156#define __NR_fchdir (__NR_Linux + 133) 157#define __NR_bdflush (__NR_Linux + 134) 158#define __NR_sysfs (__NR_Linux + 135) 159#define __NR_personality (__NR_Linux + 136) 160#define __NR_afs_syscall (__NR_Linux + 137) /* Syscall for Andrew File System */ 161#define __NR_setfsuid (__NR_Linux + 138) 162#define __NR_setfsgid (__NR_Linux + 139) 163#define __NR__llseek (__NR_Linux + 140) 164#define __NR_getdents (__NR_Linux + 141) 165#define __NR__newselect (__NR_Linux + 142) 166#define __NR_flock (__NR_Linux + 143) 167#define __NR_msync (__NR_Linux + 144) 168#define __NR_readv (__NR_Linux + 145) 169#define __NR_writev (__NR_Linux + 146) 170#define __NR_cacheflush (__NR_Linux + 147) 171#define __NR_cachectl (__NR_Linux + 148) 172#define __NR_sysmips (__NR_Linux + 149) 173#define __NR_unused150 (__NR_Linux + 150) 174#define __NR_getsid (__NR_Linux + 151) 175#define __NR_fdatasync (__NR_Linux + 152) 176#define __NR__sysctl (__NR_Linux + 153) 177#define __NR_mlock (__NR_Linux + 154) 178#define __NR_munlock (__NR_Linux + 155) 179#define __NR_mlockall (__NR_Linux + 156) 180#define __NR_munlockall (__NR_Linux + 157) 181#define __NR_sched_setparam (__NR_Linux + 158) 182#define __NR_sched_getparam (__NR_Linux + 159) 183#define __NR_sched_setscheduler (__NR_Linux + 160) 184#define __NR_sched_getscheduler (__NR_Linux + 161) 185#define __NR_sched_yield (__NR_Linux + 162) 186#define __NR_sched_get_priority_max (__NR_Linux + 163) 187#define __NR_sched_get_priority_min (__NR_Linux + 164) 188#define __NR_sched_rr_get_interval (__NR_Linux + 165) 189#define __NR_nanosleep (__NR_Linux + 166) 190#define __NR_mremap (__NR_Linux + 167) 191#define __NR_accept (__NR_Linux + 168) 192#define __NR_bind (__NR_Linux + 169) 193#define __NR_connect (__NR_Linux + 170) 194#define __NR_getpeername (__NR_Linux + 171) 195#define __NR_getsockname (__NR_Linux + 172) 196#define __NR_getsockopt (__NR_Linux + 173) 197#define __NR_listen (__NR_Linux + 174) 198#define __NR_recv (__NR_Linux + 175) 199#define __NR_recvfrom (__NR_Linux + 176) 200#define __NR_recvmsg (__NR_Linux + 177) 201#define __NR_send (__NR_Linux + 178) 202#define __NR_sendmsg (__NR_Linux + 179) 203#define __NR_sendto (__NR_Linux + 180) 204#define __NR_setsockopt (__NR_Linux + 181) 205#define __NR_shutdown (__NR_Linux + 182) 206#define __NR_socket (__NR_Linux + 183) 207#define __NR_socketpair (__NR_Linux + 184) 208#define __NR_setresuid (__NR_Linux + 185) 209#define __NR_getresuid (__NR_Linux + 186) 210#define __NR_query_module (__NR_Linux + 187) 211#define __NR_poll (__NR_Linux + 188) 212#define __NR_nfsservctl (__NR_Linux + 189) 213#define __NR_setresgid (__NR_Linux + 190) 214#define __NR_getresgid (__NR_Linux + 191) 215#define __NR_prctl (__NR_Linux + 192) 216#define __NR_rt_sigreturn (__NR_Linux + 193) 217#define __NR_rt_sigaction (__NR_Linux + 194) 218#define __NR_rt_sigprocmask (__NR_Linux + 195) 219#define __NR_rt_sigpending (__NR_Linux + 196) 220#define __NR_rt_sigtimedwait (__NR_Linux + 197) 221#define __NR_rt_sigqueueinfo (__NR_Linux + 198) 222#define __NR_rt_sigsuspend (__NR_Linux + 199) 223#define __NR_pread64 (__NR_Linux + 200) 224#define __NR_pwrite64 (__NR_Linux + 201) 225#define __NR_chown (__NR_Linux + 202) 226#define __NR_getcwd (__NR_Linux + 203) 227#define __NR_capget (__NR_Linux + 204) 228#define __NR_capset (__NR_Linux + 205) 229#define __NR_sigaltstack (__NR_Linux + 206) 230#define __NR_sendfile (__NR_Linux + 207) 231#define __NR_getpmsg (__NR_Linux + 208) 232#define __NR_putpmsg (__NR_Linux + 209) 233#define __NR_mmap2 (__NR_Linux + 210) 234#define __NR_truncate64 (__NR_Linux + 211) 235#define __NR_ftruncate64 (__NR_Linux + 212) 236#define __NR_stat64 (__NR_Linux + 213) 237#define __NR_lstat64 (__NR_Linux + 214) 238#define __NR_fstat64 (__NR_Linux + 215) 239#define __NR_pivot_root (__NR_Linux + 216) 240#define __NR_mincore (__NR_Linux + 217) 241#define __NR_madvise (__NR_Linux + 218) 242#define __NR_getdents64 (__NR_Linux + 219) 243#define __NR_fcntl64 (__NR_Linux + 220) 244#define __NR_reserved221 (__NR_Linux + 221) 245#define __NR_gettid (__NR_Linux + 222) 246#define __NR_readahead (__NR_Linux + 223) 247#define __NR_setxattr (__NR_Linux + 224) 248#define __NR_lsetxattr (__NR_Linux + 225) 249#define __NR_fsetxattr (__NR_Linux + 226) 250#define __NR_getxattr (__NR_Linux + 227) 251#define __NR_lgetxattr (__NR_Linux + 228) 252#define __NR_fgetxattr (__NR_Linux + 229) 253#define __NR_listxattr (__NR_Linux + 230) 254#define __NR_llistxattr (__NR_Linux + 231) 255#define __NR_flistxattr (__NR_Linux + 232) 256#define __NR_removexattr (__NR_Linux + 233) 257#define __NR_lremovexattr (__NR_Linux + 234) 258#define __NR_fremovexattr (__NR_Linux + 235) 259#define __NR_tkill (__NR_Linux + 236) 260#define __NR_sendfile64 (__NR_Linux + 237) 261#define __NR_futex (__NR_Linux + 238) 262#define __NR_sched_setaffinity (__NR_Linux + 239) 263#define __NR_sched_getaffinity (__NR_Linux + 240) 264#define __NR_io_setup (__NR_Linux + 241) 265#define __NR_io_destroy (__NR_Linux + 242) 266#define __NR_io_getevents (__NR_Linux + 243) 267#define __NR_io_submit (__NR_Linux + 244) 268#define __NR_io_cancel (__NR_Linux + 245) 269#define __NR_exit_group (__NR_Linux + 246) 270#define __NR_lookup_dcookie (__NR_Linux + 247) 271#define __NR_epoll_create (__NR_Linux + 248) 272#define __NR_epoll_ctl (__NR_Linux + 249) 273#define __NR_epoll_wait (__NR_Linux + 250) 274#define __NR_remap_file_pages (__NR_Linux + 251) 275#define __NR_set_tid_address (__NR_Linux + 252) 276#define __NR_restart_syscall (__NR_Linux + 253) 277#define __NR_fadvise64 (__NR_Linux + 254) 278#define __NR_statfs64 (__NR_Linux + 255) 279#define __NR_fstatfs64 (__NR_Linux + 256) 280#define __NR_timer_create (__NR_Linux + 257) 281#define __NR_timer_settime (__NR_Linux + 258) 282#define __NR_timer_gettime (__NR_Linux + 259) 283#define __NR_timer_getoverrun (__NR_Linux + 260) 284#define __NR_timer_delete (__NR_Linux + 261) 285#define __NR_clock_settime (__NR_Linux + 262) 286#define __NR_clock_gettime (__NR_Linux + 263) 287#define __NR_clock_getres (__NR_Linux + 264) 288#define __NR_clock_nanosleep (__NR_Linux + 265) 289#define __NR_tgkill (__NR_Linux + 266) 290#define __NR_utimes (__NR_Linux + 267) 291#define __NR_mbind (__NR_Linux + 268) 292#define __NR_get_mempolicy (__NR_Linux + 269) 293#define __NR_set_mempolicy (__NR_Linux + 270) 294#define __NR_mq_open (__NR_Linux + 271) 295#define __NR_mq_unlink (__NR_Linux + 272) 296#define __NR_mq_timedsend (__NR_Linux + 273) 297#define __NR_mq_timedreceive (__NR_Linux + 274) 298#define __NR_mq_notify (__NR_Linux + 275) 299#define __NR_mq_getsetattr (__NR_Linux + 276) 300#define __NR_vserver (__NR_Linux + 277) 301#define __NR_waitid (__NR_Linux + 278) 302/* #define __NR_sys_setaltroot (__NR_Linux + 279) */ 303#define __NR_add_key (__NR_Linux + 280) 304#define __NR_request_key (__NR_Linux + 281) 305#define __NR_keyctl (__NR_Linux + 282) 306#define __NR_set_thread_area (__NR_Linux + 283) 307#define __NR_inotify_init (__NR_Linux + 284) 308#define __NR_inotify_add_watch (__NR_Linux + 285) 309#define __NR_inotify_rm_watch (__NR_Linux + 286) 310#define __NR_migrate_pages (__NR_Linux + 287) 311#define __NR_openat (__NR_Linux + 288) 312#define __NR_mkdirat (__NR_Linux + 289) 313#define __NR_mknodat (__NR_Linux + 290) 314#define __NR_fchownat (__NR_Linux + 291) 315#define __NR_futimesat (__NR_Linux + 292) 316#define __NR_fstatat (__NR_Linux + 293) 317#define __NR_unlinkat (__NR_Linux + 294) 318#define __NR_renameat (__NR_Linux + 295) 319#define __NR_linkat (__NR_Linux + 296) 320#define __NR_symlinkat (__NR_Linux + 297) 321#define __NR_readlinkat (__NR_Linux + 298) 322#define __NR_fchmodat (__NR_Linux + 299) 323#define __NR_faccessat (__NR_Linux + 300) 324#define __NR_pselect6 (__NR_Linux + 301) 325#define __NR_ppoll (__NR_Linux + 302) 326#define __NR_unshare (__NR_Linux + 303) 327#define __NR_splice (__NR_Linux + 304) 328#define __NR_sync_file_range (__NR_Linux + 305) 329#define __NR_tee (__NR_Linux + 306) 330#define __NR_vmsplice (__NR_Linux + 307) 331#define __NR_move_pages (__NR_Linux + 308) 332 333/* 334 * Offset of the last Linux o32 flavoured syscall 335 */ 336#define __NR_Linux_syscalls 308 337 338#endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */ 339 340#define __NR_O32_Linux 4000 341#define __NR_O32_Linux_syscalls 308 342 343#if _MIPS_SIM == _MIPS_SIM_ABI64 344 345/* 346 * Linux 64-bit syscalls are in the range from 5000 to 5999. 347 */ 348#define __NR_Linux 5000 349#define __NR_read (__NR_Linux + 0) 350#define __NR_write (__NR_Linux + 1) 351#define __NR_open (__NR_Linux + 2) 352#define __NR_close (__NR_Linux + 3) 353#define __NR_stat (__NR_Linux + 4) 354#define __NR_fstat (__NR_Linux + 5) 355#define __NR_lstat (__NR_Linux + 6) 356#define __NR_poll (__NR_Linux + 7) 357#define __NR_lseek (__NR_Linux + 8) 358#define __NR_mmap (__NR_Linux + 9) 359#define __NR_mprotect (__NR_Linux + 10) 360#define __NR_munmap (__NR_Linux + 11) 361#define __NR_brk (__NR_Linux + 12) 362#define __NR_rt_sigaction (__NR_Linux + 13) 363#define __NR_rt_sigprocmask (__NR_Linux + 14) 364#define __NR_ioctl (__NR_Linux + 15) 365#define __NR_pread64 (__NR_Linux + 16) 366#define __NR_pwrite64 (__NR_Linux + 17) 367#define __NR_readv (__NR_Linux + 18) 368#define __NR_writev (__NR_Linux + 19) 369#define __NR_access (__NR_Linux + 20) 370#define __NR_pipe (__NR_Linux + 21) 371#define __NR__newselect (__NR_Linux + 22) 372#define __NR_sched_yield (__NR_Linux + 23) 373#define __NR_mremap (__NR_Linux + 24) 374#define __NR_msync (__NR_Linux + 25) 375#define __NR_mincore (__NR_Linux + 26) 376#define __NR_madvise (__NR_Linux + 27) 377#define __NR_shmget (__NR_Linux + 28) 378#define __NR_shmat (__NR_Linux + 29) 379#define __NR_shmctl (__NR_Linux + 30) 380#define __NR_dup (__NR_Linux + 31) 381#define __NR_dup2 (__NR_Linux + 32) 382#define __NR_pause (__NR_Linux + 33) 383#define __NR_nanosleep (__NR_Linux + 34) 384#define __NR_getitimer (__NR_Linux + 35) 385#define __NR_setitimer (__NR_Linux + 36) 386#define __NR_alarm (__NR_Linux + 37) 387#define __NR_getpid (__NR_Linux + 38) 388#define __NR_sendfile (__NR_Linux + 39) 389#define __NR_socket (__NR_Linux + 40) 390#define __NR_connect (__NR_Linux + 41) 391#define __NR_accept (__NR_Linux + 42) 392#define __NR_sendto (__NR_Linux + 43) 393#define __NR_recvfrom (__NR_Linux + 44) 394#define __NR_sendmsg (__NR_Linux + 45) 395#define __NR_recvmsg (__NR_Linux + 46) 396#define __NR_shutdown (__NR_Linux + 47) 397#define __NR_bind (__NR_Linux + 48) 398#define __NR_listen (__NR_Linux + 49) 399#define __NR_getsockname (__NR_Linux + 50) 400#define __NR_getpeername (__NR_Linux + 51) 401#define __NR_socketpair (__NR_Linux + 52) 402#define __NR_setsockopt (__NR_Linux + 53) 403#define __NR_getsockopt (__NR_Linux + 54) 404#define __NR_clone (__NR_Linux + 55) 405#define __NR_fork (__NR_Linux + 56) 406#define __NR_execve (__NR_Linux + 57) 407#define __NR_exit (__NR_Linux + 58) 408#define __NR_wait4 (__NR_Linux + 59) 409#define __NR_kill (__NR_Linux + 60) 410#define __NR_uname (__NR_Linux + 61) 411#define __NR_semget (__NR_Linux + 62) 412#define __NR_semop (__NR_Linux + 63) 413#define __NR_semctl (__NR_Linux + 64) 414#define __NR_shmdt (__NR_Linux + 65) 415#define __NR_msgget (__NR_Linux + 66) 416#define __NR_msgsnd (__NR_Linux + 67) 417#define __NR_msgrcv (__NR_Linux + 68) 418#define __NR_msgctl (__NR_Linux + 69) 419#define __NR_fcntl (__NR_Linux + 70) 420#define __NR_flock (__NR_Linux + 71) 421#define __NR_fsync (__NR_Linux + 72) 422#define __NR_fdatasync (__NR_Linux + 73) 423#define __NR_truncate (__NR_Linux + 74) 424#define __NR_ftruncate (__NR_Linux + 75) 425#define __NR_getdents (__NR_Linux + 76) 426#define __NR_getcwd (__NR_Linux + 77) 427#define __NR_chdir (__NR_Linux + 78) 428#define __NR_fchdir (__NR_Linux + 79) 429#define __NR_rename (__NR_Linux + 80) 430#define __NR_mkdir (__NR_Linux + 81) 431#define __NR_rmdir (__NR_Linux + 82) 432#define __NR_creat (__NR_Linux + 83) 433#define __NR_link (__NR_Linux + 84) 434#define __NR_unlink (__NR_Linux + 85) 435#define __NR_symlink (__NR_Linux + 86) 436#define __NR_readlink (__NR_Linux + 87) 437#define __NR_chmod (__NR_Linux + 88) 438#define __NR_fchmod (__NR_Linux + 89) 439#define __NR_chown (__NR_Linux + 90) 440#define __NR_fchown (__NR_Linux + 91) 441#define __NR_lchown (__NR_Linux + 92) 442#define __NR_umask (__NR_Linux + 93) 443#define __NR_gettimeofday (__NR_Linux + 94) 444#define __NR_getrlimit (__NR_Linux + 95) 445#define __NR_getrusage (__NR_Linux + 96) 446#define __NR_sysinfo (__NR_Linux + 97) 447#define __NR_times (__NR_Linux + 98) 448#define __NR_ptrace (__NR_Linux + 99) 449#define __NR_getuid (__NR_Linux + 100) 450#define __NR_syslog (__NR_Linux + 101) 451#define __NR_getgid (__NR_Linux + 102) 452#define __NR_setuid (__NR_Linux + 103) 453#define __NR_setgid (__NR_Linux + 104) 454#define __NR_geteuid (__NR_Linux + 105) 455#define __NR_getegid (__NR_Linux + 106) 456#define __NR_setpgid (__NR_Linux + 107) 457#define __NR_getppid (__NR_Linux + 108) 458#define __NR_getpgrp (__NR_Linux + 109) 459#define __NR_setsid (__NR_Linux + 110) 460#define __NR_setreuid (__NR_Linux + 111) 461#define __NR_setregid (__NR_Linux + 112) 462#define __NR_getgroups (__NR_Linux + 113) 463#define __NR_setgroups (__NR_Linux + 114) 464#define __NR_setresuid (__NR_Linux + 115) 465#define __NR_getresuid (__NR_Linux + 116) 466#define __NR_setresgid (__NR_Linux + 117) 467#define __NR_getresgid (__NR_Linux + 118) 468#define __NR_getpgid (__NR_Linux + 119) 469#define __NR_setfsuid (__NR_Linux + 120) 470#define __NR_setfsgid (__NR_Linux + 121) 471#define __NR_getsid (__NR_Linux + 122) 472#define __NR_capget (__NR_Linux + 123) 473#define __NR_capset (__NR_Linux + 124) 474#define __NR_rt_sigpending (__NR_Linux + 125) 475#define __NR_rt_sigtimedwait (__NR_Linux + 126) 476#define __NR_rt_sigqueueinfo (__NR_Linux + 127) 477#define __NR_rt_sigsuspend (__NR_Linux + 128) 478#define __NR_sigaltstack (__NR_Linux + 129) 479#define __NR_utime (__NR_Linux + 130) 480#define __NR_mknod (__NR_Linux + 131) 481#define __NR_personality (__NR_Linux + 132) 482#define __NR_ustat (__NR_Linux + 133) 483#define __NR_statfs (__NR_Linux + 134) 484#define __NR_fstatfs (__NR_Linux + 135) 485#define __NR_sysfs (__NR_Linux + 136) 486#define __NR_getpriority (__NR_Linux + 137) 487#define __NR_setpriority (__NR_Linux + 138) 488#define __NR_sched_setparam (__NR_Linux + 139) 489#define __NR_sched_getparam (__NR_Linux + 140) 490#define __NR_sched_setscheduler (__NR_Linux + 141) 491#define __NR_sched_getscheduler (__NR_Linux + 142) 492#define __NR_sched_get_priority_max (__NR_Linux + 143) 493#define __NR_sched_get_priority_min (__NR_Linux + 144) 494#define __NR_sched_rr_get_interval (__NR_Linux + 145) 495#define __NR_mlock (__NR_Linux + 146) 496#define __NR_munlock (__NR_Linux + 147) 497#define __NR_mlockall (__NR_Linux + 148) 498#define __NR_munlockall (__NR_Linux + 149) 499#define __NR_vhangup (__NR_Linux + 150) 500#define __NR_pivot_root (__NR_Linux + 151) 501#define __NR__sysctl (__NR_Linux + 152) 502#define __NR_prctl (__NR_Linux + 153) 503#define __NR_adjtimex (__NR_Linux + 154) 504#define __NR_setrlimit (__NR_Linux + 155) 505#define __NR_chroot (__NR_Linux + 156) 506#define __NR_sync (__NR_Linux + 157) 507#define __NR_acct (__NR_Linux + 158) 508#define __NR_settimeofday (__NR_Linux + 159) 509#define __NR_mount (__NR_Linux + 160) 510#define __NR_umount2 (__NR_Linux + 161) 511#define __NR_swapon (__NR_Linux + 162) 512#define __NR_swapoff (__NR_Linux + 163) 513#define __NR_reboot (__NR_Linux + 164) 514#define __NR_sethostname (__NR_Linux + 165) 515#define __NR_setdomainname (__NR_Linux + 166) 516#define __NR_create_module (__NR_Linux + 167) 517#define __NR_init_module (__NR_Linux + 168) 518#define __NR_delete_module (__NR_Linux + 169) 519#define __NR_get_kernel_syms (__NR_Linux + 170) 520#define __NR_query_module (__NR_Linux + 171) 521#define __NR_quotactl (__NR_Linux + 172) 522#define __NR_nfsservctl (__NR_Linux + 173) 523#define __NR_getpmsg (__NR_Linux + 174) 524#define __NR_putpmsg (__NR_Linux + 175) 525#define __NR_afs_syscall (__NR_Linux + 176) 526#define __NR_reserved177 (__NR_Linux + 177) 527#define __NR_gettid (__NR_Linux + 178) 528#define __NR_readahead (__NR_Linux + 179) 529#define __NR_setxattr (__NR_Linux + 180) 530#define __NR_lsetxattr (__NR_Linux + 181) 531#define __NR_fsetxattr (__NR_Linux + 182) 532#define __NR_getxattr (__NR_Linux + 183) 533#define __NR_lgetxattr (__NR_Linux + 184) 534#define __NR_fgetxattr (__NR_Linux + 185) 535#define __NR_listxattr (__NR_Linux + 186) 536#define __NR_llistxattr (__NR_Linux + 187) 537#define __NR_flistxattr (__NR_Linux + 188) 538#define __NR_removexattr (__NR_Linux + 189) 539#define __NR_lremovexattr (__NR_Linux + 190) 540#define __NR_fremovexattr (__NR_Linux + 191) 541#define __NR_tkill (__NR_Linux + 192) 542#define __NR_reserved193 (__NR_Linux + 193) 543#define __NR_futex (__NR_Linux + 194) 544#define __NR_sched_setaffinity (__NR_Linux + 195) 545#define __NR_sched_getaffinity (__NR_Linux + 196) 546#define __NR_cacheflush (__NR_Linux + 197) 547#define __NR_cachectl (__NR_Linux + 198) 548#define __NR_sysmips (__NR_Linux + 199) 549#define __NR_io_setup (__NR_Linux + 200) 550#define __NR_io_destroy (__NR_Linux + 201) 551#define __NR_io_getevents (__NR_Linux + 202) 552#define __NR_io_submit (__NR_Linux + 203) 553#define __NR_io_cancel (__NR_Linux + 204) 554#define __NR_exit_group (__NR_Linux + 205) 555#define __NR_lookup_dcookie (__NR_Linux + 206) 556#define __NR_epoll_create (__NR_Linux + 207) 557#define __NR_epoll_ctl (__NR_Linux + 208) 558#define __NR_epoll_wait (__NR_Linux + 209) 559#define __NR_remap_file_pages (__NR_Linux + 210) 560#define __NR_rt_sigreturn (__NR_Linux + 211) 561#define __NR_set_tid_address (__NR_Linux + 212) 562#define __NR_restart_syscall (__NR_Linux + 213) 563#define __NR_semtimedop (__NR_Linux + 214) 564#define __NR_fadvise64 (__NR_Linux + 215) 565#define __NR_timer_create (__NR_Linux + 216) 566#define __NR_timer_settime (__NR_Linux + 217) 567#define __NR_timer_gettime (__NR_Linux + 218) 568#define __NR_timer_getoverrun (__NR_Linux + 219) 569#define __NR_timer_delete (__NR_Linux + 220) 570#define __NR_clock_settime (__NR_Linux + 221) 571#define __NR_clock_gettime (__NR_Linux + 222) 572#define __NR_clock_getres (__NR_Linux + 223) 573#define __NR_clock_nanosleep (__NR_Linux + 224) 574#define __NR_tgkill (__NR_Linux + 225) 575#define __NR_utimes (__NR_Linux + 226) 576#define __NR_mbind (__NR_Linux + 227) 577#define __NR_get_mempolicy (__NR_Linux + 228) 578#define __NR_set_mempolicy (__NR_Linux + 229) 579#define __NR_mq_open (__NR_Linux + 230) 580#define __NR_mq_unlink (__NR_Linux + 231) 581#define __NR_mq_timedsend (__NR_Linux + 232) 582#define __NR_mq_timedreceive (__NR_Linux + 233) 583#define __NR_mq_notify (__NR_Linux + 234) 584#define __NR_mq_getsetattr (__NR_Linux + 235) 585#define __NR_vserver (__NR_Linux + 236) 586#define __NR_waitid (__NR_Linux + 237) 587/* #define __NR_sys_setaltroot (__NR_Linux + 238) */ 588#define __NR_add_key (__NR_Linux + 239) 589#define __NR_request_key (__NR_Linux + 240) 590#define __NR_keyctl (__NR_Linux + 241) 591#define __NR_set_thread_area (__NR_Linux + 242) 592#define __NR_inotify_init (__NR_Linux + 243) 593#define __NR_inotify_add_watch (__NR_Linux + 244) 594#define __NR_inotify_rm_watch (__NR_Linux + 245) 595#define __NR_migrate_pages (__NR_Linux + 246) 596#define __NR_openat (__NR_Linux + 247) 597#define __NR_mkdirat (__NR_Linux + 248) 598#define __NR_mknodat (__NR_Linux + 249) 599#define __NR_fchownat (__NR_Linux + 250) 600#define __NR_futimesat (__NR_Linux + 251) 601#define __NR_fstatat (__NR_Linux + 252) 602#define __NR_unlinkat (__NR_Linux + 253) 603#define __NR_renameat (__NR_Linux + 254) 604#define __NR_linkat (__NR_Linux + 255) 605#define __NR_symlinkat (__NR_Linux + 256) 606#define __NR_readlinkat (__NR_Linux + 257) 607#define __NR_fchmodat (__NR_Linux + 258) 608#define __NR_faccessat (__NR_Linux + 259) 609#define __NR_pselect6 (__NR_Linux + 260) 610#define __NR_ppoll (__NR_Linux + 261) 611#define __NR_unshare (__NR_Linux + 262) 612#define __NR_splice (__NR_Linux + 263) 613#define __NR_sync_file_range (__NR_Linux + 264) 614#define __NR_tee (__NR_Linux + 265) 615#define __NR_vmsplice (__NR_Linux + 266) 616#define __NR_move_pages (__NR_Linux + 267) 617 618/* 619 * Offset of the last Linux 64-bit flavoured syscall 620 */ 621#define __NR_Linux_syscalls 267 622 623#endif /* _MIPS_SIM == _MIPS_SIM_ABI64 */ 624 625#define __NR_64_Linux 5000 626#define __NR_64_Linux_syscalls 267 627 628#if _MIPS_SIM == _MIPS_SIM_NABI32 629 630/* 631 * Linux N32 syscalls are in the range from 6000 to 6999. 632 */ 633#define __NR_Linux 6000 634#define __NR_read (__NR_Linux + 0) 635#define __NR_write (__NR_Linux + 1) 636#define __NR_open (__NR_Linux + 2) 637#define __NR_close (__NR_Linux + 3) 638#define __NR_stat (__NR_Linux + 4) 639#define __NR_fstat (__NR_Linux + 5) 640#define __NR_lstat (__NR_Linux + 6) 641#define __NR_poll (__NR_Linux + 7) 642#define __NR_lseek (__NR_Linux + 8) 643#define __NR_mmap (__NR_Linux + 9) 644#define __NR_mprotect (__NR_Linux + 10) 645#define __NR_munmap (__NR_Linux + 11) 646#define __NR_brk (__NR_Linux + 12) 647#define __NR_rt_sigaction (__NR_Linux + 13) 648#define __NR_rt_sigprocmask (__NR_Linux + 14) 649#define __NR_ioctl (__NR_Linux + 15) 650#define __NR_pread64 (__NR_Linux + 16) 651#define __NR_pwrite64 (__NR_Linux + 17) 652#define __NR_readv (__NR_Linux + 18) 653#define __NR_writev (__NR_Linux + 19) 654#define __NR_access (__NR_Linux + 20) 655#define __NR_pipe (__NR_Linux + 21) 656#define __NR__newselect (__NR_Linux + 22) 657#define __NR_sched_yield (__NR_Linux + 23) 658#define __NR_mremap (__NR_Linux + 24) 659#define __NR_msync (__NR_Linux + 25) 660#define __NR_mincore (__NR_Linux + 26) 661#define __NR_madvise (__NR_Linux + 27) 662#define __NR_shmget (__NR_Linux + 28) 663#define __NR_shmat (__NR_Linux + 29) 664#define __NR_shmctl (__NR_Linux + 30) 665#define __NR_dup (__NR_Linux + 31) 666#define __NR_dup2 (__NR_Linux + 32) 667#define __NR_pause (__NR_Linux + 33) 668#define __NR_nanosleep (__NR_Linux + 34) 669#define __NR_getitimer (__NR_Linux + 35) 670#define __NR_setitimer (__NR_Linux + 36) 671#define __NR_alarm (__NR_Linux + 37) 672#define __NR_getpid (__NR_Linux + 38) 673#define __NR_sendfile (__NR_Linux + 39) 674#define __NR_socket (__NR_Linux + 40) 675#define __NR_connect (__NR_Linux + 41) 676#define __NR_accept (__NR_Linux + 42) 677#define __NR_sendto (__NR_Linux + 43) 678#define __NR_recvfrom (__NR_Linux + 44) 679#define __NR_sendmsg (__NR_Linux + 45) 680#define __NR_recvmsg (__NR_Linux + 46) 681#define __NR_shutdown (__NR_Linux + 47) 682#define __NR_bind (__NR_Linux + 48) 683#define __NR_listen (__NR_Linux + 49) 684#define __NR_getsockname (__NR_Linux + 50) 685#define __NR_getpeername (__NR_Linux + 51) 686#define __NR_socketpair (__NR_Linux + 52) 687#define __NR_setsockopt (__NR_Linux + 53) 688#define __NR_getsockopt (__NR_Linux + 54) 689#define __NR_clone (__NR_Linux + 55) 690#define __NR_fork (__NR_Linux + 56) 691#define __NR_execve (__NR_Linux + 57) 692#define __NR_exit (__NR_Linux + 58) 693#define __NR_wait4 (__NR_Linux + 59) 694#define __NR_kill (__NR_Linux + 60) 695#define __NR_uname (__NR_Linux + 61) 696#define __NR_semget (__NR_Linux + 62) 697#define __NR_semop (__NR_Linux + 63) 698#define __NR_semctl (__NR_Linux + 64) 699#define __NR_shmdt (__NR_Linux + 65) 700#define __NR_msgget (__NR_Linux + 66) 701#define __NR_msgsnd (__NR_Linux + 67) 702#define __NR_msgrcv (__NR_Linux + 68) 703#define __NR_msgctl (__NR_Linux + 69) 704#define __NR_fcntl (__NR_Linux + 70) 705#define __NR_flock (__NR_Linux + 71) 706#define __NR_fsync (__NR_Linux + 72) 707#define __NR_fdatasync (__NR_Linux + 73) 708#define __NR_truncate (__NR_Linux + 74) 709#define __NR_ftruncate (__NR_Linux + 75) 710#define __NR_getdents (__NR_Linux + 76) 711#define __NR_getcwd (__NR_Linux + 77) 712#define __NR_chdir (__NR_Linux + 78) 713#define __NR_fchdir (__NR_Linux + 79) 714#define __NR_rename (__NR_Linux + 80) 715#define __NR_mkdir (__NR_Linux + 81) 716#define __NR_rmdir (__NR_Linux + 82) 717#define __NR_creat (__NR_Linux + 83) 718#define __NR_link (__NR_Linux + 84) 719#define __NR_unlink (__NR_Linux + 85) 720#define __NR_symlink (__NR_Linux + 86) 721#define __NR_readlink (__NR_Linux + 87) 722#define __NR_chmod (__NR_Linux + 88) 723#define __NR_fchmod (__NR_Linux + 89) 724#define __NR_chown (__NR_Linux + 90) 725#define __NR_fchown (__NR_Linux + 91) 726#define __NR_lchown (__NR_Linux + 92) 727#define __NR_umask (__NR_Linux + 93) 728#define __NR_gettimeofday (__NR_Linux + 94) 729#define __NR_getrlimit (__NR_Linux + 95) 730#define __NR_getrusage (__NR_Linux + 96) 731#define __NR_sysinfo (__NR_Linux + 97) 732#define __NR_times (__NR_Linux + 98) 733#define __NR_ptrace (__NR_Linux + 99) 734#define __NR_getuid (__NR_Linux + 100) 735#define __NR_syslog (__NR_Linux + 101) 736#define __NR_getgid (__NR_Linux + 102) 737#define __NR_setuid (__NR_Linux + 103) 738#define __NR_setgid (__NR_Linux + 104) 739#define __NR_geteuid (__NR_Linux + 105) 740#define __NR_getegid (__NR_Linux + 106) 741#define __NR_setpgid (__NR_Linux + 107) 742#define __NR_getppid (__NR_Linux + 108) 743#define __NR_getpgrp (__NR_Linux + 109) 744#define __NR_setsid (__NR_Linux + 110) 745#define __NR_setreuid (__NR_Linux + 111) 746#define __NR_setregid (__NR_Linux + 112) 747#define __NR_getgroups (__NR_Linux + 113) 748#define __NR_setgroups (__NR_Linux + 114) 749#define __NR_setresuid (__NR_Linux + 115) 750#define __NR_getresuid (__NR_Linux + 116) 751#define __NR_setresgid (__NR_Linux + 117) 752#define __NR_getresgid (__NR_Linux + 118) 753#define __NR_getpgid (__NR_Linux + 119) 754#define __NR_setfsuid (__NR_Linux + 120) 755#define __NR_setfsgid (__NR_Linux + 121) 756#define __NR_getsid (__NR_Linux + 122) 757#define __NR_capget (__NR_Linux + 123) 758#define __NR_capset (__NR_Linux + 124) 759#define __NR_rt_sigpending (__NR_Linux + 125) 760#define __NR_rt_sigtimedwait (__NR_Linux + 126) 761#define __NR_rt_sigqueueinfo (__NR_Linux + 127) 762#define __NR_rt_sigsuspend (__NR_Linux + 128) 763#define __NR_sigaltstack (__NR_Linux + 129) 764#define __NR_utime (__NR_Linux + 130) 765#define __NR_mknod (__NR_Linux + 131) 766#define __NR_personality (__NR_Linux + 132) 767#define __NR_ustat (__NR_Linux + 133) 768#define __NR_statfs (__NR_Linux + 134) 769#define __NR_fstatfs (__NR_Linux + 135) 770#define __NR_sysfs (__NR_Linux + 136) 771#define __NR_getpriority (__NR_Linux + 137) 772#define __NR_setpriority (__NR_Linux + 138) 773#define __NR_sched_setparam (__NR_Linux + 139) 774#define __NR_sched_getparam (__NR_Linux + 140) 775#define __NR_sched_setscheduler (__NR_Linux + 141) 776#define __NR_sched_getscheduler (__NR_Linux + 142) 777#define __NR_sched_get_priority_max (__NR_Linux + 143) 778#define __NR_sched_get_priority_min (__NR_Linux + 144) 779#define __NR_sched_rr_get_interval (__NR_Linux + 145) 780#define __NR_mlock (__NR_Linux + 146) 781#define __NR_munlock (__NR_Linux + 147) 782#define __NR_mlockall (__NR_Linux + 148) 783#define __NR_munlockall (__NR_Linux + 149) 784#define __NR_vhangup (__NR_Linux + 150) 785#define __NR_pivot_root (__NR_Linux + 151) 786#define __NR__sysctl (__NR_Linux + 152) 787#define __NR_prctl (__NR_Linux + 153) 788#define __NR_adjtimex (__NR_Linux + 154) 789#define __NR_setrlimit (__NR_Linux + 155) 790#define __NR_chroot (__NR_Linux + 156) 791#define __NR_sync (__NR_Linux + 157) 792#define __NR_acct (__NR_Linux + 158) 793#define __NR_settimeofday (__NR_Linux + 159) 794#define __NR_mount (__NR_Linux + 160) 795#define __NR_umount2 (__NR_Linux + 161) 796#define __NR_swapon (__NR_Linux + 162) 797#define __NR_swapoff (__NR_Linux + 163) 798#define __NR_reboot (__NR_Linux + 164) 799#define __NR_sethostname (__NR_Linux + 165) 800#define __NR_setdomainname (__NR_Linux + 166) 801#define __NR_create_module (__NR_Linux + 167) 802#define __NR_init_module (__NR_Linux + 168) 803#define __NR_delete_module (__NR_Linux + 169) 804#define __NR_get_kernel_syms (__NR_Linux + 170) 805#define __NR_query_module (__NR_Linux + 171) 806#define __NR_quotactl (__NR_Linux + 172) 807#define __NR_nfsservctl (__NR_Linux + 173) 808#define __NR_getpmsg (__NR_Linux + 174) 809#define __NR_putpmsg (__NR_Linux + 175) 810#define __NR_afs_syscall (__NR_Linux + 176) 811#define __NR_reserved177 (__NR_Linux + 177) 812#define __NR_gettid (__NR_Linux + 178) 813#define __NR_readahead (__NR_Linux + 179) 814#define __NR_setxattr (__NR_Linux + 180) 815#define __NR_lsetxattr (__NR_Linux + 181) 816#define __NR_fsetxattr (__NR_Linux + 182) 817#define __NR_getxattr (__NR_Linux + 183) 818#define __NR_lgetxattr (__NR_Linux + 184) 819#define __NR_fgetxattr (__NR_Linux + 185) 820#define __NR_listxattr (__NR_Linux + 186) 821#define __NR_llistxattr (__NR_Linux + 187) 822#define __NR_flistxattr (__NR_Linux + 188) 823#define __NR_removexattr (__NR_Linux + 189) 824#define __NR_lremovexattr (__NR_Linux + 190) 825#define __NR_fremovexattr (__NR_Linux + 191) 826#define __NR_tkill (__NR_Linux + 192) 827#define __NR_reserved193 (__NR_Linux + 193) 828#define __NR_futex (__NR_Linux + 194) 829#define __NR_sched_setaffinity (__NR_Linux + 195) 830#define __NR_sched_getaffinity (__NR_Linux + 196) 831#define __NR_cacheflush (__NR_Linux + 197) 832#define __NR_cachectl (__NR_Linux + 198) 833#define __NR_sysmips (__NR_Linux + 199) 834#define __NR_io_setup (__NR_Linux + 200) 835#define __NR_io_destroy (__NR_Linux + 201) 836#define __NR_io_getevents (__NR_Linux + 202) 837#define __NR_io_submit (__NR_Linux + 203) 838#define __NR_io_cancel (__NR_Linux + 204) 839#define __NR_exit_group (__NR_Linux + 205) 840#define __NR_lookup_dcookie (__NR_Linux + 206) 841#define __NR_epoll_create (__NR_Linux + 207) 842#define __NR_epoll_ctl (__NR_Linux + 208) 843#define __NR_epoll_wait (__NR_Linux + 209) 844#define __NR_remap_file_pages (__NR_Linux + 210) 845#define __NR_rt_sigreturn (__NR_Linux + 211) 846#define __NR_fcntl64 (__NR_Linux + 212) 847#define __NR_set_tid_address (__NR_Linux + 213) 848#define __NR_restart_syscall (__NR_Linux + 214) 849#define __NR_semtimedop (__NR_Linux + 215) 850#define __NR_fadvise64 (__NR_Linux + 216) 851#define __NR_statfs64 (__NR_Linux + 217) 852#define __NR_fstatfs64 (__NR_Linux + 218) 853#define __NR_sendfile64 (__NR_Linux + 219) 854#define __NR_timer_create (__NR_Linux + 220) 855#define __NR_timer_settime (__NR_Linux + 221) 856#define __NR_timer_gettime (__NR_Linux + 222) 857#define __NR_timer_getoverrun (__NR_Linux + 223) 858#define __NR_timer_delete (__NR_Linux + 224) 859#define __NR_clock_settime (__NR_Linux + 225) 860#define __NR_clock_gettime (__NR_Linux + 226) 861#define __NR_clock_getres (__NR_Linux + 227) 862#define __NR_clock_nanosleep (__NR_Linux + 228) 863#define __NR_tgkill (__NR_Linux + 229) 864#define __NR_utimes (__NR_Linux + 230) 865#define __NR_mbind (__NR_Linux + 231) 866#define __NR_get_mempolicy (__NR_Linux + 232) 867#define __NR_set_mempolicy (__NR_Linux + 233) 868#define __NR_mq_open (__NR_Linux + 234) 869#define __NR_mq_unlink (__NR_Linux + 235) 870#define __NR_mq_timedsend (__NR_Linux + 236) 871#define __NR_mq_timedreceive (__NR_Linux + 237) 872#define __NR_mq_notify (__NR_Linux + 238) 873#define __NR_mq_getsetattr (__NR_Linux + 239) 874#define __NR_vserver (__NR_Linux + 240) 875#define __NR_waitid (__NR_Linux + 241) 876/* #define __NR_sys_setaltroot (__NR_Linux + 242) */ 877#define __NR_add_key (__NR_Linux + 243) 878#define __NR_request_key (__NR_Linux + 244) 879#define __NR_keyctl (__NR_Linux + 245) 880#define __NR_set_thread_area (__NR_Linux + 246) 881#define __NR_inotify_init (__NR_Linux + 247) 882#define __NR_inotify_add_watch (__NR_Linux + 248) 883#define __NR_inotify_rm_watch (__NR_Linux + 249) 884#define __NR_migrate_pages (__NR_Linux + 250) 885#define __NR_openat (__NR_Linux + 251) 886#define __NR_mkdirat (__NR_Linux + 252) 887#define __NR_mknodat (__NR_Linux + 253) 888#define __NR_fchownat (__NR_Linux + 254) 889#define __NR_futimesat (__NR_Linux + 255) 890#define __NR_fstatat (__NR_Linux + 256) 891#define __NR_unlinkat (__NR_Linux + 257) 892#define __NR_renameat (__NR_Linux + 258) 893#define __NR_linkat (__NR_Linux + 259) 894#define __NR_symlinkat (__NR_Linux + 260) 895#define __NR_readlinkat (__NR_Linux + 261) 896#define __NR_fchmodat (__NR_Linux + 262) 897#define __NR_faccessat (__NR_Linux + 263) 898#define __NR_pselect6 (__NR_Linux + 264) 899#define __NR_ppoll (__NR_Linux + 265) 900#define __NR_unshare (__NR_Linux + 266) 901#define __NR_splice (__NR_Linux + 267) 902#define __NR_sync_file_range (__NR_Linux + 268) 903#define __NR_tee (__NR_Linux + 269) 904#define __NR_vmsplice (__NR_Linux + 270) 905#define __NR_move_pages (__NR_Linux + 271) 906 907/* 908 * Offset of the last N32 flavoured syscall 909 */ 910#define __NR_Linux_syscalls 271 911 912#endif /* _MIPS_SIM == _MIPS_SIM_NABI32 */ 913 914#define __NR_N32_Linux 6000 915#define __NR_N32_Linux_syscalls 271 916 917#ifdef __KERNEL__ 918 919#ifndef __ASSEMBLY__ 920 921/* XXX - _foo needs to be __foo, while __NR_bar could be _NR_bar. */ 922#define _syscall0(type,name) \ 923type name(void) \ 924{ \ 925 register unsigned long __a3 asm("$7"); \ 926 unsigned long __v0; \ 927 \ 928 __asm__ volatile ( \ 929 ".set\tnoreorder\n\t" \ 930 "li\t$2, %2\t\t\t# " #name "\n\t" \ 931 "syscall\n\t" \ 932 "move\t%0, $2\n\t" \ 933 ".set\treorder" \ 934 : "=&r" (__v0), "=r" (__a3) \ 935 : "i" (__NR_##name) \ 936 : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \ 937 "memory"); \ 938 \ 939 if (__a3 == 0) \ 940 return (type) __v0; \ 941 errno = __v0; \ 942 return (type) -1; \ 943} 944 945/* 946 * DANGER: This macro isn't usable for the pipe(2) call 947 * which has a unusual return convention. 948 */ 949#define _syscall1(type,name,atype,a) \ 950type name(atype a) \ 951{ \ 952 register unsigned long __a0 asm("$4") = (unsigned long) a; \ 953 register unsigned long __a3 asm("$7"); \ 954 unsigned long __v0; \ 955 \ 956 __asm__ volatile ( \ 957 ".set\tnoreorder\n\t" \ 958 "li\t$2, %3\t\t\t# " #name "\n\t" \ 959 "syscall\n\t" \ 960 "move\t%0, $2\n\t" \ 961 ".set\treorder" \ 962 : "=&r" (__v0), "=r" (__a3) \ 963 : "r" (__a0), "i" (__NR_##name) \ 964 : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \ 965 "memory"); \ 966 \ 967 if (__a3 == 0) \ 968 return (type) __v0; \ 969 errno = __v0; \ 970 return (type) -1; \ 971} 972 973#define _syscall2(type,name,atype,a,btype,b) \ 974type name(atype a, btype b) \ 975{ \ 976 register unsigned long __a0 asm("$4") = (unsigned long) a; \ 977 register unsigned long __a1 asm("$5") = (unsigned long) b; \ 978 register unsigned long __a3 asm("$7"); \ 979 unsigned long __v0; \ 980 \ 981 __asm__ volatile ( \ 982 ".set\tnoreorder\n\t" \ 983 "li\t$2, %4\t\t\t# " #name "\n\t" \ 984 "syscall\n\t" \ 985 "move\t%0, $2\n\t" \ 986 ".set\treorder" \ 987 : "=&r" (__v0), "=r" (__a3) \ 988 : "r" (__a0), "r" (__a1), "i" (__NR_##name) \ 989 : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \ 990 "memory"); \ 991 \ 992 if (__a3 == 0) \ 993 return (type) __v0; \ 994 errno = __v0; \ 995 return (type) -1; \ 996} 997 998#define _syscall3(type,name,atype,a,btype,b,ctype,c) \ 999type name(atype a, btype b, ctype c) \ 1000{ \ 1001 register unsigned long __a0 asm("$4") = (unsigned long) a; \ 1002 register unsigned long __a1 asm("$5") = (unsigned long) b; \ 1003 register unsigned long __a2 asm("$6") = (unsigned long) c; \ 1004 register unsigned long __a3 asm("$7"); \ 1005 unsigned long __v0; \ 1006 \ 1007 __asm__ volatile ( \ 1008 ".set\tnoreorder\n\t" \ 1009 "li\t$2, %5\t\t\t# " #name "\n\t" \ 1010 "syscall\n\t" \ 1011 "move\t%0, $2\n\t" \ 1012 ".set\treorder" \ 1013 : "=&r" (__v0), "=r" (__a3) \ 1014 : "r" (__a0), "r" (__a1), "r" (__a2), "i" (__NR_##name) \ 1015 : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \ 1016 "memory"); \ 1017 \ 1018 if (__a3 == 0) \ 1019 return (type) __v0; \ 1020 errno = __v0; \ 1021 return (type) -1; \ 1022} 1023 1024#define _syscall4(type,name,atype,a,btype,b,ctype,c,dtype,d) \ 1025type name(atype a, btype b, ctype c, dtype d) \ 1026{ \ 1027 register unsigned long __a0 asm("$4") = (unsigned long) a; \ 1028 register unsigned long __a1 asm("$5") = (unsigned long) b; \ 1029 register unsigned long __a2 asm("$6") = (unsigned long) c; \ 1030 register unsigned long __a3 asm("$7") = (unsigned long) d; \ 1031 unsigned long __v0; \ 1032 \ 1033 __asm__ volatile ( \ 1034 ".set\tnoreorder\n\t" \ 1035 "li\t$2, %5\t\t\t# " #name "\n\t" \ 1036 "syscall\n\t" \ 1037 "move\t%0, $2\n\t" \ 1038 ".set\treorder" \ 1039 : "=&r" (__v0), "+r" (__a3) \ 1040 : "r" (__a0), "r" (__a1), "r" (__a2), "i" (__NR_##name) \ 1041 : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \ 1042 "memory"); \ 1043 \ 1044 if (__a3 == 0) \ 1045 return (type) __v0; \ 1046 errno = __v0; \ 1047 return (type) -1; \ 1048} 1049 1050#if (_MIPS_SIM == _MIPS_SIM_ABI32) 1051 1052/* 1053 * Using those means your brain needs more than an oil change ;-) 1054 */ 1055 1056#define _syscall5(type,name,atype,a,btype,b,ctype,c,dtype,d,etype,e) \ 1057type name(atype a, btype b, ctype c, dtype d, etype e) \ 1058{ \ 1059 register unsigned long __a0 asm("$4") = (unsigned long) a; \ 1060 register unsigned long __a1 asm("$5") = (unsigned long) b; \ 1061 register unsigned long __a2 asm("$6") = (unsigned long) c; \ 1062 register unsigned long __a3 asm("$7") = (unsigned long) d; \ 1063 unsigned long __v0; \ 1064 \ 1065 __asm__ volatile ( \ 1066 ".set\tnoreorder\n\t" \ 1067 "lw\t$2, %6\n\t" \ 1068 "subu\t$29, 32\n\t" \ 1069 "sw\t$2, 16($29)\n\t" \ 1070 "li\t$2, %5\t\t\t# " #name "\n\t" \ 1071 "syscall\n\t" \ 1072 "move\t%0, $2\n\t" \ 1073 "addiu\t$29, 32\n\t" \ 1074 ".set\treorder" \ 1075 : "=&r" (__v0), "+r" (__a3) \ 1076 : "r" (__a0), "r" (__a1), "r" (__a2), "i" (__NR_##name), \ 1077 "m" ((unsigned long)e) \ 1078 : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \ 1079 "memory"); \ 1080 \ 1081 if (__a3 == 0) \ 1082 return (type) __v0; \ 1083 errno = __v0; \ 1084 return (type) -1; \ 1085} 1086 1087#define _syscall6(type,name,atype,a,btype,b,ctype,c,dtype,d,etype,e,ftype,f) \ 1088type name(atype a, btype b, ctype c, dtype d, etype e, ftype f) \ 1089{ \ 1090 register unsigned long __a0 asm("$4") = (unsigned long) a; \ 1091 register unsigned long __a1 asm("$5") = (unsigned long) b; \ 1092 register unsigned long __a2 asm("$6") = (unsigned long) c; \ 1093 register unsigned long __a3 asm("$7") = (unsigned long) d; \ 1094 unsigned long __v0; \ 1095 \ 1096 __asm__ volatile ( \ 1097 ".set\tnoreorder\n\t" \ 1098 "lw\t$2, %6\n\t" \ 1099 "lw\t$8, %7\n\t" \ 1100 "subu\t$29, 32\n\t" \ 1101 "sw\t$2, 16($29)\n\t" \ 1102 "sw\t$8, 20($29)\n\t" \ 1103 "li\t$2, %5\t\t\t# " #name "\n\t" \ 1104 "syscall\n\t" \ 1105 "move\t%0, $2\n\t" \ 1106 "addiu\t$29, 32\n\t" \ 1107 ".set\treorder" \ 1108 : "=&r" (__v0), "+r" (__a3) \ 1109 : "r" (__a0), "r" (__a1), "r" (__a2), "i" (__NR_##name), \ 1110 "m" ((unsigned long)e), "m" ((unsigned long)f) \ 1111 : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \ 1112 "memory"); \ 1113 \ 1114 if (__a3 == 0) \ 1115 return (type) __v0; \ 1116 errno = __v0; \ 1117 return (type) -1; \ 1118} 1119 1120#endif /* (_MIPS_SIM == _MIPS_SIM_ABI32) */ 1121 1122#if (_MIPS_SIM == _MIPS_SIM_NABI32) || (_MIPS_SIM == _MIPS_SIM_ABI64) 1123 1124#define _syscall5(type,name,atype,a,btype,b,ctype,c,dtype,d,etype,e) \ 1125type name (atype a,btype b,ctype c,dtype d,etype e) \ 1126{ \ 1127 register unsigned long __a0 asm("$4") = (unsigned long) a; \ 1128 register unsigned long __a1 asm("$5") = (unsigned long) b; \ 1129 register unsigned long __a2 asm("$6") = (unsigned long) c; \ 1130 register unsigned long __a3 asm("$7") = (unsigned long) d; \ 1131 register unsigned long __a4 asm("$8") = (unsigned long) e; \ 1132 unsigned long __v0; \ 1133 \ 1134 __asm__ volatile ( \ 1135 ".set\tnoreorder\n\t" \ 1136 "li\t$2, %6\t\t\t# " #name "\n\t" \ 1137 "syscall\n\t" \ 1138 "move\t%0, $2\n\t" \ 1139 ".set\treorder" \ 1140 : "=&r" (__v0), "+r" (__a3) \ 1141 : "r" (__a0), "r" (__a1), "r" (__a2), "r" (__a4), "i" (__NR_##name) \ 1142 : "$2", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \ 1143 "memory"); \ 1144 \ 1145 if (__a3 == 0) \ 1146 return (type) __v0; \ 1147 errno = __v0; \ 1148 return (type) -1; \ 1149} 1150 1151#define _syscall6(type,name,atype,a,btype,b,ctype,c,dtype,d,etype,e,ftype,f) \ 1152type name (atype a,btype b,ctype c,dtype d,etype e,ftype f) \ 1153{ \ 1154 register unsigned long __a0 asm("$4") = (unsigned long) a; \ 1155 register unsigned long __a1 asm("$5") = (unsigned long) b; \ 1156 register unsigned long __a2 asm("$6") = (unsigned long) c; \ 1157 register unsigned long __a3 asm("$7") = (unsigned long) d; \ 1158 register unsigned long __a4 asm("$8") = (unsigned long) e; \ 1159 register unsigned long __a5 asm("$9") = (unsigned long) f; \ 1160 unsigned long __v0; \ 1161 \ 1162 __asm__ volatile ( \ 1163 ".set\tnoreorder\n\t" \ 1164 "li\t$2, %7\t\t\t# " #name "\n\t" \ 1165 "syscall\n\t" \ 1166 "move\t%0, $2\n\t" \ 1167 ".set\treorder" \ 1168 : "=&r" (__v0), "+r" (__a3) \ 1169 : "r" (__a0), "r" (__a1), "r" (__a2), "r" (__a4), "r" (__a5), \ 1170 "i" (__NR_##name) \ 1171 : "$2", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \ 1172 "memory"); \ 1173 \ 1174 if (__a3 == 0) \ 1175 return (type) __v0; \ 1176 errno = __v0; \ 1177 return (type) -1; \ 1178} 1179 1180#endif /* (_MIPS_SIM == _MIPS_SIM_NABI32) || (_MIPS_SIM == _MIPS_SIM_ABI64) */ 1181 1182 1183#define __ARCH_WANT_IPC_PARSE_VERSION 1184#define __ARCH_WANT_OLD_READDIR 1185#define __ARCH_WANT_SYS_ALARM 1186#define __ARCH_WANT_SYS_GETHOSTNAME 1187#define __ARCH_WANT_SYS_PAUSE 1188#define __ARCH_WANT_SYS_SGETMASK 1189#define __ARCH_WANT_SYS_UTIME 1190#define __ARCH_WANT_SYS_WAITPID 1191#define __ARCH_WANT_SYS_SOCKETCALL 1192#define __ARCH_WANT_SYS_FADVISE64 1193#define __ARCH_WANT_SYS_GETPGRP 1194#define __ARCH_WANT_SYS_LLSEEK 1195#define __ARCH_WANT_SYS_NICE 1196#define __ARCH_WANT_SYS_OLD_GETRLIMIT 1197#define __ARCH_WANT_SYS_OLDUMOUNT 1198#define __ARCH_WANT_SYS_SIGPENDING 1199#define __ARCH_WANT_SYS_SIGPROCMASK 1200#define __ARCH_WANT_SYS_RT_SIGACTION 1201# ifdef CONFIG_32BIT 1202# define __ARCH_WANT_STAT64 1203# define __ARCH_WANT_SYS_TIME 1204# endif 1205# ifdef CONFIG_MIPS32_O32 1206# define __ARCH_WANT_COMPAT_SYS_TIME 1207# endif 1208 1209#ifdef __KERNEL_SYSCALLS__ 1210 1211#include <linux/compiler.h> 1212#include <linux/types.h> 1213#include <linux/linkage.h> 1214#include <asm/ptrace.h> 1215#include <asm/sim.h> 1216 1217/* 1218 * we need this inline - forking from kernel space will result 1219 * in NO COPY ON WRITE (!!!), until an execve is executed. This 1220 * is no problem, but for the stack. This is handled by not letting 1221 * main() use the stack at all after fork(). Thus, no function 1222 * calls - which means inline code for fork too, as otherwise we 1223 * would use the stack upon exit from 'fork()'. 1224 * 1225 * Actually only pause and fork are needed inline, so that there 1226 * won't be any messing with the stack from main(), but we define 1227 * some others too. 1228 */ 1229static inline _syscall3(int,execve,const char *,file,char **,argv,char **,envp) 1230 1231asmlinkage unsigned long sys_mmap( 1232 unsigned long addr, size_t len, 1233 int prot, int flags, 1234 int fd, off_t offset); 1235asmlinkage long sys_mmap2( 1236 unsigned long addr, unsigned long len, 1237 unsigned long prot, unsigned long flags, 1238 unsigned long fd, unsigned long pgoff); 1239asmlinkage int sys_execve(nabi_no_regargs struct pt_regs regs); 1240asmlinkage int sys_pipe(nabi_no_regargs struct pt_regs regs); 1241struct sigaction; 1242asmlinkage long sys_rt_sigaction(int sig, 1243 const struct sigaction __user *act, 1244 struct sigaction __user *oact, 1245 size_t sigsetsize); 1246 1247#endif /* __KERNEL_SYSCALLS__ */ 1248#endif /* !__ASSEMBLY__ */ 1249 1250/* 1251 * "Conditional" syscalls 1252 * 1253 * What we want is __attribute__((weak,alias("sys_ni_syscall"))), 1254 * but it doesn't work on all toolchains, so we just do it by hand 1255 */ 1256#define cond_syscall(x) asm(".weak\t" #x "\n" #x "\t=\tsys_ni_syscall") 1257 1258#endif /* __KERNEL__ */ 1259#endif /* _ASM_UNISTD_H */