1/* $Id: systbls.S,v 1.79 2001/10/18 08:27:05 davem Exp $ 2 * systbls.S: System call entry point tables for OS compatibility. 3 * The native Linux system call table lives here also. 4 * 5 * Copyright (C) 1995, 1996 David S. Miller (davem@caip.rutgers.edu) 6 * Copyright (C) 1997 Jakub Jelinek (jj@sunsite.mff.cuni.cz) 7 * 8 * Based upon preliminary work which is: 9 * 10 * Copyright (C) 1995 Adrian M. Rodriguez (adrian@remus.rutgers.edu) 11 */ 12 13#include <linux/config.h> 14 15 .text 16 .align 1024 17 18 /* First, the 32-bit Linux native syscall table. */ 19 20 .globl sys_call_table32 21sys_call_table32: 22/*0*/ .word sys_nis_syscall, sparc_exit, sys_fork, sys_read, sys_write 23/*5*/ .word sparc32_open, sys_close, sys32_wait4, sys_creat, sys_link 24/*10*/ .word sys_unlink, sunos_execv, sys_chdir, sys32_chown16, sys32_mknod 25/*15*/ .word sys32_chmod, sys32_lchown16, sparc_brk, sys_perfctr, sys32_lseek 26/*20*/ .word sys_getpid, sys_capget, sys_capset, sys32_setuid16, sys32_getuid16 27/*25*/ .word sys_time, sys_ptrace, sys_alarm, sys32_sigaltstack, sys32_pause 28/*30*/ .word sys32_utime, sys_lchown, sys_fchown, sys_access, sys_nice 29 .word sys_chown, sys_sync, sys_kill, sys32_newstat, sys32_sendfile 30/*40*/ .word sys32_newlstat, sys_dup, sys_pipe, sys32_times, sys_getuid 31 .word sys_umount, sys32_setgid16, sys32_getgid16, sys_signal, sys32_geteuid16 32/*50*/ .word sys32_getegid16, sys_acct, sys_nis_syscall, sys_getgid, sys32_ioctl 33 .word sys_reboot, sys32_mmap2, sys_symlink, sys_readlink, sys32_execve 34/*60*/ .word sys_umask, sys_chroot, sys32_newfstat, sys_fstat64, sys_getpagesize 35 .word sys_msync, sys_vfork, sys32_pread, sys32_pwrite, sys_geteuid 36/*70*/ .word sys_getegid, sys32_mmap, sys_setreuid, sys_munmap, sys_mprotect 37 .word sys_madvise, sys_vhangup, sys32_truncate64, sys_mincore, sys32_getgroups16 38/*80*/ .word sys32_setgroups16, sys_getpgrp, sys_setgroups, sys32_setitimer, sys32_ftruncate64 39 .word sys_swapon, sys32_getitimer, sys_setuid, sys_sethostname, sys_setgid 40/*90*/ .word sys_dup2, sys_setfsuid, sys32_fcntl, sys32_select, sys_setfsgid 41 .word sys_fsync, sys_setpriority32, sys_nis_syscall, sys_nis_syscall, sys_nis_syscall 42/*100*/ .word sys_getpriority, sys32_rt_sigreturn, sys32_rt_sigaction, sys32_rt_sigprocmask, sys32_rt_sigpending 43 .word sys32_rt_sigtimedwait, sys32_rt_sigqueueinfo, sys32_rt_sigsuspend, sys_setresuid, sys_getresuid 44/*110*/ .word sys_setresgid, sys_getresgid, sys_setregid, sys_nis_syscall, sys_nis_syscall 45 .word sys_getgroups, sys32_gettimeofday, sys32_getrusage, sys_nis_syscall, sys_getcwd 46/*120*/ .word sys32_readv, sys32_writev, sys32_settimeofday, sys32_fchown16, sys_fchmod 47 .word sys_nis_syscall, sys32_setreuid16, sys32_setregid16, sys_rename, sys_truncate 48/*130*/ .word sys_ftruncate, sys_flock, sys_lstat64, sys_nis_syscall, sys_nis_syscall 49 .word sys_nis_syscall, sys_mkdir, sys_rmdir, sys32_utimes, sys_stat64 50/*140*/ .word sys_nis_syscall, sys_nis_syscall, sys_nis_syscall, sys_gettid, sys32_getrlimit 51 .word sys32_setrlimit, sys_pivot_root, sys32_prctl, sys32_pciconfig_read, sys32_pciconfig_write 52/*150*/ .word sys_nis_syscall, sys_nis_syscall, sys_nis_syscall, sys_poll, sys_getdents64 53 .word sys32_fcntl64, sys_nis_syscall, sys32_statfs, sys32_fstatfs, sys_oldumount 54/*160*/ .word sys_nis_syscall, sys_nis_syscall, sys_getdomainname, sys_setdomainname, sys_nis_syscall 55 .word sys32_quotactl, sys_nis_syscall, sys32_mount, sys_ustat, sys_setxattr 56/*170*/ .word sys_lsetxattr, sys_fsetxattr, sys_getxattr, sys_lgetxattr, sys32_getdents 57 .word sys_setsid, sys_fchdir, sys_fgetxattr, sys_listxattr, sys_llistxattr 58/*180*/ .word sys_flistxattr, sys_removexattr, sys_lremovexattr, sys32_sigpending, sys32_query_module 59 .word sys_setpgid, sys_fremovexattr, sys_tkill, sys_nis_syscall, sparc64_newuname 60/*190*/ .word sys32_init_module, sparc64_personality, sys_nis_syscall, sys_nis_syscall, sys_nis_syscall 61 .word sys_nis_syscall, sys_nis_syscall, sys_getppid, sys32_sigaction, sys_sgetmask 62/*200*/ .word sys_ssetmask, sys_sigsuspend, sys32_newlstat, sys_uselib, old32_readdir 63 .word sys32_readahead, sys32_socketcall, sys_syslog, sys_nis_syscall, sys_nis_syscall 64/*210*/ .word sys_nis_syscall, sys_nis_syscall, sys_waitpid, sys_swapoff, sys32_sysinfo 65 .word sys32_ipc, sys32_sigreturn, sys_clone, sys_nis_syscall, sys32_adjtimex 66/*220*/ .word sys32_sigprocmask, sys32_create_module, sys32_delete_module, sys32_get_kernel_syms, sys_getpgid 67 .word sys32_bdflush, sys32_sysfs, sys_nis_syscall, sys32_setfsuid16, sys32_setfsgid16 68/*230*/ .word sys32_select, sys_time, sys_nis_syscall, sys_stime, sys_nis_syscall 69 .word sys_nis_syscall, sys_llseek, sys_mlock, sys_munlock, sys_mlockall 70/*240*/ .word sys_munlockall, sys_sched_setparam, sys_sched_getparam, sys_sched_setscheduler, sys_sched_getscheduler 71 .word sys_sched_yield, sys_sched_get_priority_max, sys_sched_get_priority_min, sys32_sched_rr_get_interval, sys32_nanosleep 72/*250*/ .word sys32_mremap, sys32_sysctl, sys_getsid, sys_fdatasync, sys32_nfsservctl 73 .word sys_aplib 74 75 /* Now the 64-bit native Linux syscall table. */ 76 77 .align 1024 78 .globl sys_call_table64, sys_call_table 79sys_call_table64: 80sys_call_table: 81/*0*/ .word sys_nis_syscall, sparc_exit, sys_fork, sys_read, sys_write 82/*5*/ .word sys_open, sys_close, sys_wait4, sys_creat, sys_link 83/*10*/ .word sys_unlink, sunos_execv, sys_chdir, sys_chown, sys_mknod 84/*15*/ .word sys_chmod, sys_lchown, sparc_brk, sys_perfctr, sys_lseek 85/*20*/ .word sys_getpid, sys_capget, sys_capset, sys_setuid, sys_getuid 86/*25*/ .word sys_nis_syscall, sys_ptrace, sys_alarm, sys_sigaltstack, sys_nis_syscall 87/*30*/ .word sys_utime, sys_nis_syscall, sys_nis_syscall, sys_access, sys_nice 88 .word sys_nis_syscall, sys_sync, sys_kill, sys_newstat, sys_sendfile 89/*40*/ .word sys_newlstat, sys_dup, sys_pipe, sys_times, sys_nis_syscall 90 .word sys_umount, sys_setgid, sys_getgid, sys_signal, sys_geteuid 91/*50*/ .word sys_getegid, sys_acct, sys_memory_ordering, sys_nis_syscall, sys_ioctl 92 .word sys_reboot, sys_nis_syscall, sys_symlink, sys_readlink, sys_execve 93/*60*/ .word sys_umask, sys_chroot, sys_newfstat, sys_nis_syscall, sys_getpagesize 94 .word sys_msync, sys_vfork, sys_pread, sys_pwrite, sys_nis_syscall 95/*70*/ .word sys_nis_syscall, sys_mmap, sys_nis_syscall, sys64_munmap, sys_mprotect 96 .word sys_madvise, sys_vhangup, sys_nis_syscall, sys_mincore, sys_getgroups 97/*80*/ .word sys_setgroups, sys_getpgrp, sys_nis_syscall, sys_setitimer, sys_nis_syscall 98 .word sys_swapon, sys_getitimer, sys_nis_syscall, sys_sethostname, sys_nis_syscall 99/*90*/ .word sys_dup2, sys_nis_syscall, sys_fcntl, sys_select, sys_nis_syscall 100 .word sys_fsync, sys_setpriority, sys_socket, sys_connect, sys_accept 101/*100*/ .word sys_getpriority, sys_rt_sigreturn, sys_rt_sigaction, sys_rt_sigprocmask, sys_rt_sigpending 102 .word sys_rt_sigtimedwait, sys_rt_sigqueueinfo, sys_rt_sigsuspend, sys_setresuid, sys_getresuid 103/*110*/ .word sys_setresgid, sys_getresgid, sys_nis_syscall, sys_recvmsg, sys_sendmsg 104 .word sys_nis_syscall, sys_gettimeofday, sys_getrusage, sys_getsockopt, sys_getcwd 105/*120*/ .word sys_readv, sys_writev, sys_settimeofday, sys_fchown, sys_fchmod 106 .word sys_recvfrom, sys_setreuid, sys_setregid, sys_rename, sys_truncate 107/*130*/ .word sys_ftruncate, sys_flock, sys_nis_syscall, sys_sendto, sys_shutdown 108 .word sys_socketpair, sys_mkdir, sys_rmdir, sys_utimes, sys_nis_syscall 109/*140*/ .word sys_nis_syscall, sys_getpeername, sys_nis_syscall, sys_gettid, sys_getrlimit 110 .word sys_setrlimit, sys_pivot_root, sys_prctl, sys_pciconfig_read, sys_pciconfig_write 111/*150*/ .word sys_getsockname, sys_nis_syscall, sys_nis_syscall, sys_poll, sys_getdents64 112 .word sys_nis_syscall, sys_nis_syscall, sys_statfs, sys_fstatfs, sys_oldumount 113/*160*/ .word sys_nis_syscall, sys_nis_syscall, sys_getdomainname, sys_setdomainname, sys_utrap_install 114 .word sys_quotactl, sys_nis_syscall, sys_mount, sys_ustat, sys_setxattr 115/*170*/ .word sys_lsetxattr, sys_fsetxattr, sys_getxattr, sys_lgetxattr, sys_getdents 116 .word sys_setsid, sys_fchdir, sys_fgetxattr, sys_listxattr, sys_llistxattr 117/*180*/ .word sys_flistxattr, sys_removexattr, sys_lremovexattr, sys_nis_syscall, sys_query_module 118 .word sys_setpgid, sys_fremovexattr, sys_tkill, sys_nis_syscall, sparc64_newuname 119/*190*/ .word sys_init_module, sparc64_personality, sys_nis_syscall, sys_nis_syscall, sys_nis_syscall 120 .word sys_nis_syscall, sys_nis_syscall, sys_getppid, sys_nis_syscall, sys_sgetmask 121/*200*/ .word sys_ssetmask, sys_nis_syscall, sys_newlstat, sys_uselib, sys_nis_syscall 122 .word sys_readahead, sys_socketcall, sys_syslog, sys_nis_syscall, sys_nis_syscall 123/*210*/ .word sys_nis_syscall, sys_nis_syscall, sys_waitpid, sys_swapoff, sys_sysinfo 124 .word sys_ipc, sys_nis_syscall, sys_clone, sys_nis_syscall, sys_adjtimex 125/*220*/ .word sys_nis_syscall, sys_create_module, sys_delete_module, sys_get_kernel_syms, sys_getpgid 126 .word sys_bdflush, sys_sysfs, sys_nis_syscall, sys_setfsuid, sys_setfsgid 127/*230*/ .word sys_select, sys_nis_syscall, sys_nis_syscall, sys_stime, sys_nis_syscall 128 .word sys_nis_syscall, sys_llseek, sys_mlock, sys_munlock, sys_mlockall 129/*240*/ .word sys_munlockall, sys_sched_setparam, sys_sched_getparam, sys_sched_setscheduler, sys_sched_getscheduler 130 .word sys_sched_yield, sys_sched_get_priority_max, sys_sched_get_priority_min, sys_sched_rr_get_interval, sys_nanosleep 131/*250*/ .word sys64_mremap, sys_sysctl, sys_getsid, sys_fdatasync, sys_nfsservctl 132 .word sys_aplib 133 134#if defined(CONFIG_SUNOS_EMUL) || defined(CONFIG_SOLARIS_EMUL) || \ 135 defined(CONFIG_SOLARIS_EMUL_MODULE) 136 /* Now the 32-bit SunOS syscall table. */ 137 138 .align 1024 139 .globl sunos_sys_table 140sunos_sys_table: 141/*0*/ .word sunos_indir, sparc_exit, sys_fork 142 .word sunos_read, sunos_write, sunos_open 143 .word sys_close, sunos_wait4, sys_creat 144 .word sys_link, sys_unlink, sunos_execv 145 .word sys_chdir, sunos_nosys, sys32_mknod 146 .word sys32_chmod, sys32_lchown16, sunos_brk 147 .word sunos_nosys, sys32_lseek, sunos_getpid 148 .word sunos_nosys, sunos_nosys, sunos_nosys 149 .word sunos_getuid, sunos_nosys, sys_ptrace 150 .word sunos_nosys, sunos_nosys, sunos_nosys 151 .word sunos_nosys, sunos_nosys, sunos_nosys 152 .word sys_access, sunos_nosys, sunos_nosys 153 .word sys_sync, sys_kill, sys32_newstat 154 .word sunos_nosys, sys32_newlstat, sys_dup 155 .word sys_pipe, sunos_nosys, sunos_nosys 156 .word sunos_nosys, sunos_nosys, sunos_getgid 157 .word sunos_nosys, sunos_nosys 158/*50*/ .word sunos_nosys, sys_acct, sunos_nosys 159 .word sunos_mctl, sunos_ioctl, sys_reboot 160 .word sunos_nosys, sys_symlink, sys_readlink 161 .word sys32_execve, sys_umask, sys_chroot 162 .word sys32_newfstat, sunos_nosys, sys_getpagesize 163 .word sys_msync, sys_vfork, sunos_nosys 164 .word sunos_nosys, sunos_sbrk, sunos_sstk 165 .word sunos_mmap, sunos_vadvise, sys_munmap 166 .word sys_mprotect, sys_madvise, sys_vhangup 167 .word sunos_nosys, sys_mincore, sys32_getgroups16 168 .word sys32_setgroups16, sys_getpgrp, sunos_setpgrp 169 .word sys32_setitimer, sunos_nosys, sys_swapon 170 .word sys32_getitimer, sys_gethostname, sys_sethostname 171 .word sunos_getdtablesize, sys_dup2, sunos_nop 172 .word sys32_fcntl, sunos_select, sunos_nop 173 .word sys_fsync, sys_setpriority32, sunos_socket 174 .word sys_connect, sunos_accept 175/*100*/ .word sys_getpriority, sunos_send, sunos_recv 176 .word sunos_nosys, sys_bind, sunos_setsockopt 177 .word sys_listen, sunos_nosys, sunos_sigaction 178 .word sunos_sigblock, sunos_sigsetmask, sys_sigpause 179 .word sys32_sigstack, sys32_recvmsg, sys32_sendmsg 180 .word sunos_nosys, sys32_gettimeofday, sys32_getrusage 181 .word sunos_getsockopt, sunos_nosys, sunos_readv 182 .word sunos_writev, sys32_settimeofday, sys32_fchown16 183 .word sys_fchmod, sys32_recvfrom, sys32_setreuid16 184 .word sys32_setregid16, sys_rename, sys_truncate 185 .word sys_ftruncate, sys_flock, sunos_nosys 186 .word sys32_sendto, sys_shutdown, sys_socketpair 187 .word sys_mkdir, sys_rmdir, sys32_utimes 188 .word sys32_sigreturn, sunos_nosys, sys_getpeername 189 .word sunos_gethostid, sunos_nosys, sys32_getrlimit 190 .word sys32_setrlimit, sunos_killpg, sunos_nosys 191 .word sunos_nosys, sunos_nosys 192/*150*/ .word sys_getsockname, sunos_nosys, sunos_nosys 193 .word sys_poll, sunos_nosys, sunos_nosys 194 .word sunos_getdirentries, sys32_statfs, sys32_fstatfs 195 .word sys_oldumount, sunos_nosys, sunos_nosys 196 .word sys_getdomainname, sys_setdomainname 197 .word sunos_nosys, sys32_quotactl, sunos_nosys 198 .word sunos_mount, sys_ustat, sunos_semsys 199 .word sunos_nosys, sunos_shmsys, sunos_audit 200 .word sunos_nosys, sunos_getdents, sys_setsid 201 .word sys_fchdir, sunos_nosys, sunos_nosys 202 .word sunos_nosys, sunos_nosys, sunos_nosys 203 .word sunos_nosys, sys32_sigpending, sunos_nosys 204 .word sys_setpgid, sunos_pathconf, sunos_fpathconf 205 .word sunos_sysconf, sunos_uname, sunos_nosys 206 .word sunos_nosys, sunos_nosys, sunos_nosys 207 .word sunos_nosys, sunos_nosys, sunos_nosys 208 .word sunos_nosys, sunos_nosys, sunos_nosys 209/*200*/ .word sunos_nosys, sunos_nosys, sunos_nosys 210 .word sunos_nosys, sunos_nosys, sunos_nosys 211 .word sunos_nosys, sunos_nosys, sunos_nosys 212 .word sunos_nosys, sunos_nosys, sunos_nosys 213 .word sunos_nosys, sunos_nosys, sunos_nosys 214 .word sunos_nosys, sunos_nosys, sunos_nosys 215 .word sunos_nosys, sunos_nosys, sunos_nosys 216 .word sunos_nosys, sunos_nosys, sunos_nosys 217 .word sunos_nosys, sunos_nosys, sunos_nosys 218 .word sunos_nosys, sunos_nosys, sunos_nosys 219 .word sunos_nosys, sunos_nosys, sunos_nosys 220 .word sunos_nosys, sunos_nosys, sunos_nosys 221 .word sunos_nosys, sunos_nosys, sunos_nosys 222 .word sunos_nosys, sunos_nosys, sunos_nosys 223 .word sunos_nosys, sunos_nosys, sunos_nosys 224 .word sunos_nosys, sunos_nosys, sunos_nosys 225 .word sunos_nosys, sunos_nosys 226/*250*/ .word sunos_nosys, sunos_nosys, sunos_nosys 227 .word sunos_nosys, sunos_nosys, sys_aplib 228 229#endif 230