1/* 2 * arch/sh/kernel/syscalls_64.S 3 * 4 * Copyright (C) 2000, 2001 Paolo Alberelli 5 * Copyright (C) 2004 - 2007 Paul Mundt 6 * Copyright (C) 2003, 2004 Richard Curnow 7 * 8 * This file is subject to the terms and conditions of the GNU General Public 9 * License. See the file "COPYING" in the main directory of this archive 10 * for more details. 11 */ 12 13#include <linux/sys.h> 14 15 .section .data, "aw" 16 .balign 32 17 18/* 19 * System calls jump table 20 */ 21 .globl sys_call_table 22sys_call_table: 23 .long sys_restart_syscall /* 0 - old "setup()" system call */ 24 .long sys_exit 25 .long sys_fork 26 .long sys_read 27 .long sys_write 28 .long sys_open /* 5 */ 29 .long sys_close 30 .long sys_waitpid 31 .long sys_creat 32 .long sys_link 33 .long sys_unlink /* 10 */ 34 .long sys_execve 35 .long sys_chdir 36 .long sys_time 37 .long sys_mknod 38 .long sys_chmod /* 15 */ 39 .long sys_lchown16 40 .long sys_ni_syscall /* old break syscall holder */ 41 .long sys_stat 42 .long sys_lseek 43 .long sys_getpid /* 20 */ 44 .long sys_mount 45 .long sys_oldumount 46 .long sys_setuid16 47 .long sys_getuid16 48 .long sys_stime /* 25 */ 49 .long sh64_ptrace 50 .long sys_alarm 51 .long sys_fstat 52 .long sys_pause 53 .long sys_utime /* 30 */ 54 .long sys_ni_syscall /* old stty syscall holder */ 55 .long sys_ni_syscall /* old gtty syscall holder */ 56 .long sys_access 57 .long sys_nice 58 .long sys_ni_syscall /* 35 */ /* old ftime syscall holder */ 59 .long sys_sync 60 .long sys_kill 61 .long sys_rename 62 .long sys_mkdir 63 .long sys_rmdir /* 40 */ 64 .long sys_dup 65 .long sys_pipe 66 .long sys_times 67 .long sys_ni_syscall /* old prof syscall holder */ 68 .long sys_brk /* 45 */ 69 .long sys_setgid16 70 .long sys_getgid16 71 .long sys_signal 72 .long sys_geteuid16 73 .long sys_getegid16 /* 50 */ 74 .long sys_acct 75 .long sys_umount /* recycled never used phys( */ 76 .long sys_ni_syscall /* old lock syscall holder */ 77 .long sys_ioctl 78 .long sys_fcntl /* 55 */ 79 .long sys_ni_syscall /* old mpx syscall holder */ 80 .long sys_setpgid 81 .long sys_ni_syscall /* old ulimit syscall holder */ 82 .long sys_ni_syscall /* sys_olduname */ 83 .long sys_umask /* 60 */ 84 .long sys_chroot 85 .long sys_ustat 86 .long sys_dup2 87 .long sys_getppid 88 .long sys_getpgrp /* 65 */ 89 .long sys_setsid 90 .long sys_sigaction 91 .long sys_sgetmask 92 .long sys_ssetmask 93 .long sys_setreuid16 /* 70 */ 94 .long sys_setregid16 95 .long sys_sigsuspend 96 .long sys_sigpending 97 .long sys_sethostname 98 .long sys_setrlimit /* 75 */ 99 .long sys_old_getrlimit 100 .long sys_getrusage 101 .long sys_gettimeofday 102 .long sys_settimeofday 103 .long sys_getgroups16 /* 80 */ 104 .long sys_setgroups16 105 .long sys_ni_syscall /* sys_oldselect */ 106 .long sys_symlink 107 .long sys_lstat 108 .long sys_readlink /* 85 */ 109 .long sys_uselib 110 .long sys_swapon 111 .long sys_reboot 112 .long sys_old_readdir 113 .long old_mmap /* 90 */ 114 .long sys_munmap 115 .long sys_truncate 116 .long sys_ftruncate 117 .long sys_fchmod 118 .long sys_fchown16 /* 95 */ 119 .long sys_getpriority 120 .long sys_setpriority 121 .long sys_ni_syscall /* old profil syscall holder */ 122 .long sys_statfs 123 .long sys_fstatfs /* 100 */ 124 .long sys_ni_syscall /* ioperm */ 125 .long sys_socketcall /* Obsolete implementation of socket syscall */ 126 .long sys_syslog 127 .long sys_setitimer 128 .long sys_getitimer /* 105 */ 129 .long sys_newstat 130 .long sys_newlstat 131 .long sys_newfstat 132 .long sys_uname 133 .long sys_ni_syscall /* 110 */ /* iopl */ 134 .long sys_vhangup 135 .long sys_ni_syscall /* idle */ 136 .long sys_ni_syscall /* vm86old */ 137 .long sys_wait4 138 .long sys_swapoff /* 115 */ 139 .long sys_sysinfo 140 .long sys_ipc /* Obsolete ipc syscall implementation */ 141 .long sys_fsync 142 .long sys_sigreturn 143 .long sys_clone /* 120 */ 144 .long sys_setdomainname 145 .long sys_newuname 146 .long sys_cacheflush /* x86: sys_modify_ldt */ 147 .long sys_adjtimex 148 .long sys_mprotect /* 125 */ 149 .long sys_sigprocmask 150 .long sys_ni_syscall /* old "create_module" */ 151 .long sys_init_module 152 .long sys_delete_module 153 .long sys_ni_syscall /* 130: old "get_kernel_syms" */ 154 .long sys_quotactl 155 .long sys_getpgid 156 .long sys_fchdir 157 .long sys_bdflush 158 .long sys_sysfs /* 135 */ 159 .long sys_personality 160 .long sys_ni_syscall /* for afs_syscall */ 161 .long sys_setfsuid16 162 .long sys_setfsgid16 163 .long sys_llseek /* 140 */ 164 .long sys_getdents 165 .long sys_select 166 .long sys_flock 167 .long sys_msync 168 .long sys_readv /* 145 */ 169 .long sys_writev 170 .long sys_getsid 171 .long sys_fdatasync 172 .long sys_sysctl 173 .long sys_mlock /* 150 */ 174 .long sys_munlock 175 .long sys_mlockall 176 .long sys_munlockall 177 .long sys_sched_setparam 178 .long sys_sched_getparam /* 155 */ 179 .long sys_sched_setscheduler 180 .long sys_sched_getscheduler 181 .long sys_sched_yield 182 .long sys_sched_get_priority_max 183 .long sys_sched_get_priority_min /* 160 */ 184 .long sys_sched_rr_get_interval 185 .long sys_nanosleep 186 .long sys_mremap 187 .long sys_setresuid16 188 .long sys_getresuid16 /* 165 */ 189 .long sys_ni_syscall /* vm86 */ 190 .long sys_ni_syscall /* old "query_module" */ 191 .long sys_poll 192 .long sys_ni_syscall /* was nfsservctl */ 193 .long sys_setresgid16 /* 170 */ 194 .long sys_getresgid16 195 .long sys_prctl 196 .long sys_rt_sigreturn 197 .long sys_rt_sigaction 198 .long sys_rt_sigprocmask /* 175 */ 199 .long sys_rt_sigpending 200 .long sys_rt_sigtimedwait 201 .long sys_rt_sigqueueinfo 202 .long sys_rt_sigsuspend 203 .long sys_pread64 /* 180 */ 204 .long sys_pwrite64 205 .long sys_chown16 206 .long sys_getcwd 207 .long sys_capget 208 .long sys_capset /* 185 */ 209 .long sys_sigaltstack 210 .long sys_sendfile 211 .long sys_ni_syscall /* getpmsg */ 212 .long sys_ni_syscall /* putpmsg */ 213 .long sys_vfork /* 190 */ 214 .long sys_getrlimit 215 .long sys_mmap2 216 .long sys_truncate64 217 .long sys_ftruncate64 218 .long sys_stat64 /* 195 */ 219 .long sys_lstat64 220 .long sys_fstat64 221 .long sys_lchown 222 .long sys_getuid 223 .long sys_getgid /* 200 */ 224 .long sys_geteuid 225 .long sys_getegid 226 .long sys_setreuid 227 .long sys_setregid 228 .long sys_getgroups /* 205 */ 229 .long sys_setgroups 230 .long sys_fchown 231 .long sys_setresuid 232 .long sys_getresuid 233 .long sys_setresgid /* 210 */ 234 .long sys_getresgid 235 .long sys_chown 236 .long sys_setuid 237 .long sys_setgid 238 .long sys_setfsuid /* 215 */ 239 .long sys_setfsgid 240 .long sys_pivot_root 241 .long sys_mincore 242 .long sys_madvise 243 /* Broken-out socket family (maintain backwards compatibility in syscall 244 numbering with 2.4) */ 245 .long sys_socket /* 220 */ 246 .long sys_bind 247 .long sys_connect 248 .long sys_listen 249 .long sys_accept 250 .long sys_getsockname /* 225 */ 251 .long sys_getpeername 252 .long sys_socketpair 253 .long sys_send 254 .long sys_sendto 255 .long sys_recv /* 230*/ 256 .long sys_recvfrom 257 .long sys_shutdown 258 .long sys_setsockopt 259 .long sys_getsockopt 260 .long sys_sendmsg /* 235 */ 261 .long sys_recvmsg 262 /* Broken-out IPC family (maintain backwards compatibility in syscall 263 numbering with 2.4) */ 264 .long sys_semop 265 .long sys_semget 266 .long sys_semctl 267 .long sys_msgsnd /* 240 */ 268 .long sys_msgrcv 269 .long sys_msgget 270 .long sys_msgctl 271 .long sys_shmat 272 .long sys_shmdt /* 245 */ 273 .long sys_shmget 274 .long sys_shmctl 275 /* Rest of syscalls listed in 2.4 i386 unistd.h */ 276 .long sys_getdents64 277 .long sys_fcntl64 278 .long sys_ni_syscall /* 250 reserved for TUX */ 279 .long sys_ni_syscall /* Reserved for Security */ 280 .long sys_gettid 281 .long sys_readahead 282 .long sys_setxattr 283 .long sys_lsetxattr /* 255 */ 284 .long sys_fsetxattr 285 .long sys_getxattr 286 .long sys_lgetxattr 287 .long sys_fgetxattr 288 .long sys_listxattr /* 260 */ 289 .long sys_llistxattr 290 .long sys_flistxattr 291 .long sys_removexattr 292 .long sys_lremovexattr 293 .long sys_fremovexattr /* 265 */ 294 .long sys_tkill 295 .long sys_sendfile64 296 .long sys_futex 297 .long sys_sched_setaffinity 298 .long sys_sched_getaffinity /* 270 */ 299 .long sys_ni_syscall /* reserved for set_thread_area */ 300 .long sys_ni_syscall /* reserved for get_thread_area */ 301 .long sys_io_setup 302 .long sys_io_destroy 303 .long sys_io_getevents /* 275 */ 304 .long sys_io_submit 305 .long sys_io_cancel 306 .long sys_fadvise64 307 .long sys_ni_syscall 308 .long sys_exit_group /* 280 */ 309 /* Rest of new 2.6 syscalls */ 310 .long sys_lookup_dcookie 311 .long sys_epoll_create 312 .long sys_epoll_ctl 313 .long sys_epoll_wait 314 .long sys_remap_file_pages /* 285 */ 315 .long sys_set_tid_address 316 .long sys_timer_create 317 .long sys_timer_settime 318 .long sys_timer_gettime 319 .long sys_timer_getoverrun /* 290 */ 320 .long sys_timer_delete 321 .long sys_clock_settime 322 .long sys_clock_gettime 323 .long sys_clock_getres 324 .long sys_clock_nanosleep /* 295 */ 325 .long sys_statfs64 326 .long sys_fstatfs64 327 .long sys_tgkill 328 .long sys_utimes 329 .long sys_fadvise64_64 /* 300 */ 330 .long sys_ni_syscall /* Reserved for vserver */ 331 .long sys_ni_syscall /* Reserved for mbind */ 332 .long sys_ni_syscall /* get_mempolicy */ 333 .long sys_ni_syscall /* set_mempolicy */ 334 .long sys_mq_open /* 305 */ 335 .long sys_mq_unlink 336 .long sys_mq_timedsend 337 .long sys_mq_timedreceive 338 .long sys_mq_notify 339 .long sys_mq_getsetattr /* 310 */ 340 .long sys_ni_syscall /* Reserved for kexec */ 341 .long sys_waitid 342 .long sys_add_key 343 .long sys_request_key 344 .long sys_keyctl /* 315 */ 345 .long sys_ioprio_set 346 .long sys_ioprio_get 347 .long sys_inotify_init 348 .long sys_inotify_add_watch 349 .long sys_inotify_rm_watch /* 320 */ 350 .long sys_ni_syscall 351 .long sys_migrate_pages 352 .long sys_openat 353 .long sys_mkdirat 354 .long sys_mknodat /* 325 */ 355 .long sys_fchownat 356 .long sys_futimesat 357 .long sys_fstatat64 358 .long sys_unlinkat 359 .long sys_renameat /* 330 */ 360 .long sys_linkat 361 .long sys_symlinkat 362 .long sys_readlinkat 363 .long sys_fchmodat 364 .long sys_faccessat /* 335 */ 365 .long sys_pselect6 366 .long sys_ppoll 367 .long sys_unshare 368 .long sys_set_robust_list 369 .long sys_get_robust_list /* 340 */ 370 .long sys_splice 371 .long sys_sync_file_range 372 .long sys_tee 373 .long sys_vmsplice 374 .long sys_move_pages /* 345 */ 375 .long sys_getcpu 376 .long sys_epoll_pwait 377 .long sys_utimensat 378 .long sys_signalfd 379 .long sys_timerfd_create /* 350 */ 380 .long sys_eventfd 381 .long sys_fallocate 382 .long sys_timerfd_settime 383 .long sys_timerfd_gettime 384 .long sys_signalfd4 /* 355 */ 385 .long sys_eventfd2 386 .long sys_epoll_create1 387 .long sys_dup3 388 .long sys_pipe2 389 .long sys_inotify_init1 /* 360 */ 390 .long sys_preadv 391 .long sys_pwritev 392 .long sys_rt_tgsigqueueinfo 393 .long sys_perf_event_open 394 .long sys_recvmmsg /* 365 */ 395 .long sys_accept4 396 .long sys_fanotify_init 397 .long sys_fanotify_mark 398 .long sys_prlimit64 399 .long sys_name_to_handle_at /* 370 */ 400 .long sys_open_by_handle_at 401 .long sys_clock_adjtime 402 .long sys_syncfs 403 .long sys_sendmmsg 404 .long sys_setns /* 375 */ 405 .long sys_process_vm_readv 406 .long sys_process_vm_writev 407 .long sys_kcmp 408 .long sys_finit_module 409