PageRenderTime 15ms CodeModel.GetById 2ms app.highlight 9ms RepoModel.GetById 1ms app.codeStats 0ms

/arch/sparc64/kernel/systbls.S

https://bitbucket.org/evzijst/gittest
Assembly | 251 lines | 242 code | 9 blank | 0 comment | 3 complexity | 432e59f214211f16e2117461b1f3ee35 MD5 | raw file
  1/* $Id: systbls.S,v 1.81 2002/02/08 03:57:14 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	4
 17
 18#ifdef CONFIG_COMPAT
 19	/* First, the 32-bit Linux native syscall table. */
 20
 21	.globl sys_call_table32
 22sys_call_table32:
 23/*0*/	.word sys_restart_syscall, sys32_exit, sys_fork, sys_read, sys_write
 24/*5*/	.word sys32_open, sys_close, sys32_wait4, sys32_creat, sys_link
 25/*10*/  .word sys_unlink, sunos_execv, sys_chdir, sys32_chown16, sys32_mknod
 26/*15*/	.word sys_chmod, sys32_lchown16, sparc_brk, sys32_perfctr, sys32_lseek
 27/*20*/	.word sys_getpid, sys_capget, sys_capset, sys32_setuid16, sys32_getuid16
 28/*25*/	.word compat_sys_time, sys_ptrace, sys_alarm, sys32_sigaltstack, sys32_pause
 29/*30*/	.word compat_sys_utime, sys_lchown, sys_fchown, sys32_access, sys32_nice
 30	.word sys_chown, sys_sync, sys32_kill, compat_sys_newstat, sys32_sendfile
 31/*40*/	.word compat_sys_newlstat, sys_dup, sys_pipe, compat_sys_times, sys_getuid
 32	.word sys32_umount, sys32_setgid16, sys32_getgid16, sys32_signal, sys32_geteuid16
 33/*50*/	.word sys32_getegid16, sys_acct, sys_nis_syscall, sys_getgid, compat_sys_ioctl
 34	.word sys32_reboot, sys32_mmap2, sys_symlink, sys32_readlink, sys32_execve
 35/*60*/	.word sys32_umask, sys_chroot, compat_sys_newfstat, sys_fstat64, sys_getpagesize
 36	.word sys32_msync, sys_vfork, sys32_pread64, sys32_pwrite64, sys_geteuid
 37/*70*/	.word sys_getegid, sys_mmap, sys_setreuid, sys_munmap, sys_mprotect
 38	.word sys_madvise, sys_vhangup, sys32_truncate64, sys_mincore, sys32_getgroups16
 39/*80*/	.word sys32_setgroups16, sys_getpgrp, sys32_setgroups, sys32_setitimer, sys32_ftruncate64
 40	.word sys32_swapon, sys32_getitimer, sys_setuid, sys32_sethostname, sys_setgid
 41/*90*/	.word sys_dup2, sys_setfsuid, compat_sys_fcntl, sys32_select, sys_setfsgid
 42	.word sys_fsync, sys32_setpriority, sys_nis_syscall, sys_nis_syscall, sys_nis_syscall
 43/*100*/ .word sys32_getpriority, sys32_rt_sigreturn, sys32_rt_sigaction, sys32_rt_sigprocmask, sys32_rt_sigpending
 44	.word compat_sys_rt_sigtimedwait, sys32_rt_sigqueueinfo, sys32_rt_sigsuspend, sys_setresuid, sys_getresuid
 45/*110*/	.word sys_setresgid, sys_getresgid, sys_setregid, sys_nis_syscall, sys_nis_syscall
 46	.word sys32_getgroups, sys32_gettimeofday, sys32_getrusage, sys_nis_syscall, sys_getcwd
 47/*120*/	.word compat_sys_readv, compat_sys_writev, sys32_settimeofday, sys32_fchown16, sys_fchmod
 48	.word sys_nis_syscall, sys32_setreuid16, sys32_setregid16, sys_rename, sys_truncate
 49/*130*/	.word sys_ftruncate, sys_flock, sys_lstat64, sys_nis_syscall, sys_nis_syscall
 50	.word sys_nis_syscall, sys32_mkdir, sys_rmdir, sys32_utimes, sys_stat64
 51/*140*/	.word sys32_sendfile64, sys_nis_syscall, sys32_futex, sys_gettid, compat_sys_getrlimit
 52	.word compat_sys_setrlimit, sys_pivot_root, sys32_prctl, sys_pciconfig_read, sys_pciconfig_write
 53/*150*/	.word sys_nis_syscall, sys_nis_syscall, sys_nis_syscall, sys_poll, sys_getdents64
 54	.word compat_sys_fcntl64, sys_ni_syscall, compat_sys_statfs, compat_sys_fstatfs, sys_oldumount
 55/*160*/	.word compat_sys_sched_setaffinity, compat_sys_sched_getaffinity, sys32_getdomainname, sys32_setdomainname, sys_nis_syscall
 56	.word sys_quotactl, sys_set_tid_address, compat_sys_mount, sys_ustat, sys32_setxattr
 57/*170*/	.word sys32_lsetxattr, sys32_fsetxattr, sys_getxattr, sys_lgetxattr, compat_sys_getdents
 58	.word sys_setsid, sys_fchdir, sys32_fgetxattr, sys_listxattr, sys_llistxattr
 59/*180*/	.word sys32_flistxattr, sys_removexattr, sys_lremovexattr, compat_sys_sigpending, sys_ni_syscall
 60	.word sys32_setpgid, sys32_fremovexattr, sys32_tkill, sys32_exit_group, sparc64_newuname
 61/*190*/	.word sys32_init_module, sparc64_personality, sys_remap_file_pages, sys32_epoll_create, sys32_epoll_ctl
 62	.word sys32_epoll_wait, sys_nis_syscall, sys_getppid, sys32_sigaction, sys_sgetmask
 63/*200*/	.word sys32_ssetmask, sys_sigsuspend, compat_sys_newlstat, sys_uselib, compat_sys_old_readdir
 64	.word sys32_readahead, sys32_socketcall, sys32_syslog, sys32_lookup_dcookie, sys32_fadvise64
 65/*210*/	.word sys32_fadvise64_64, sys32_tgkill, sys32_waitpid, sys_swapoff, sys32_sysinfo
 66	.word sys32_ipc, sys32_sigreturn, sys_clone, sys_nis_syscall, sys32_adjtimex
 67/*220*/	.word sys32_sigprocmask, sys_ni_syscall, sys32_delete_module, sys_ni_syscall, sys32_getpgid
 68	.word sys32_bdflush, sys32_sysfs, sys_nis_syscall, sys32_setfsuid16, sys32_setfsgid16
 69/*230*/	.word sys32_select, compat_sys_time, sys_nis_syscall, compat_sys_stime, compat_sys_statfs64
 70	.word compat_sys_fstatfs64, sys_llseek, sys_mlock, sys_munlock, sys32_mlockall
 71/*240*/	.word sys_munlockall, sys32_sched_setparam, sys32_sched_getparam, sys32_sched_setscheduler, sys32_sched_getscheduler
 72	.word sys_sched_yield, sys32_sched_get_priority_max, sys32_sched_get_priority_min, sys32_sched_rr_get_interval, compat_sys_nanosleep
 73/*250*/	.word sys32_mremap, sys32_sysctl, sys32_getsid, sys_fdatasync, sys32_nfsservctl
 74	.word sys_ni_syscall, sys32_clock_settime, compat_sys_clock_gettime, compat_sys_clock_getres, sys32_clock_nanosleep
 75/*260*/	.word compat_sys_sched_getaffinity, compat_sys_sched_setaffinity, sys32_timer_settime, compat_sys_timer_gettime, sys_timer_getoverrun
 76	.word sys_timer_delete, sys32_timer_create, sys_ni_syscall, compat_sys_io_setup, sys_io_destroy
 77/*270*/	.word sys32_io_submit, sys_io_cancel, compat_sys_io_getevents, sys32_mq_open, sys_mq_unlink
 78	.word sys_mq_timedsend, sys_mq_timedreceive, compat_sys_mq_notify, compat_sys_mq_getsetattr, compat_sys_waitid
 79/*280*/	.word sys_ni_syscall, sys_add_key, sys_request_key, sys_keyctl
 80
 81#endif /* CONFIG_COMPAT */
 82
 83	/* Now the 64-bit native Linux syscall table. */
 84
 85	.align	4
 86	.globl sys_call_table64, sys_call_table
 87sys_call_table64:
 88sys_call_table:
 89/*0*/	.word sys_restart_syscall, sparc_exit, sys_fork, sys_read, sys_write
 90/*5*/	.word sys_open, sys_close, sys_wait4, sys_creat, sys_link
 91/*10*/  .word sys_unlink, sys_nis_syscall, sys_chdir, sys_chown, sys_mknod
 92/*15*/	.word sys_chmod, sys_lchown, sparc_brk, sys_perfctr, sys_lseek
 93/*20*/	.word sys_getpid, sys_capget, sys_capset, sys_setuid, sys_getuid
 94/*25*/	.word sys_nis_syscall, sys_ptrace, sys_alarm, sys_sigaltstack, sys_nis_syscall
 95/*30*/	.word sys_utime, sys_nis_syscall, sys_nis_syscall, sys_access, sys_nice
 96	.word sys_nis_syscall, sys_sync, sys_kill, sys_newstat, sys_sendfile64
 97/*40*/	.word sys_newlstat, sys_dup, sys_pipe, sys_times, sys_nis_syscall
 98	.word sys_umount, sys_setgid, sys_getgid, sys_signal, sys_geteuid
 99/*50*/	.word sys_getegid, sys_acct, sys_memory_ordering, sys_nis_syscall, sys_ioctl
100	.word sys_reboot, sys_nis_syscall, sys_symlink, sys_readlink, sys_execve
101/*60*/	.word sys_umask, sys_chroot, sys_newfstat, sys_nis_syscall, sys_getpagesize
102	.word sys_msync, sys_vfork, sys_pread64, sys_pwrite64, sys_nis_syscall
103/*70*/	.word sys_nis_syscall, sys_mmap, sys_nis_syscall, sys64_munmap, sys_mprotect
104	.word sys_madvise, sys_vhangup, sys_nis_syscall, sys_mincore, sys_getgroups
105/*80*/	.word sys_setgroups, sys_getpgrp, sys_nis_syscall, sys_setitimer, sys_nis_syscall
106	.word sys_swapon, sys_getitimer, sys_nis_syscall, sys_sethostname, sys_nis_syscall
107/*90*/	.word sys_dup2, sys_nis_syscall, sys_fcntl, sys_select, sys_nis_syscall
108	.word sys_fsync, sys_setpriority, sys_socket, sys_connect, sys_accept
109/*100*/	.word sys_getpriority, sys_rt_sigreturn, sys_rt_sigaction, sys_rt_sigprocmask, sys_rt_sigpending
110	.word sys_rt_sigtimedwait, sys_rt_sigqueueinfo, sys_rt_sigsuspend, sys_setresuid, sys_getresuid
111/*110*/	.word sys_setresgid, sys_getresgid, sys_nis_syscall, sys_recvmsg, sys_sendmsg
112	.word sys_nis_syscall, sys_gettimeofday, sys_getrusage, sys_getsockopt, sys_getcwd
113/*120*/	.word sys_readv, sys_writev, sys_settimeofday, sys_fchown, sys_fchmod
114	.word sys_recvfrom, sys_setreuid, sys_setregid, sys_rename, sys_truncate
115/*130*/	.word sys_ftruncate, sys_flock, sys_nis_syscall, sys_sendto, sys_shutdown
116	.word sys_socketpair, sys_mkdir, sys_rmdir, sys_utimes, sys_nis_syscall
117/*140*/	.word sys_sendfile64, sys_getpeername, sys_futex, sys_gettid, sys_getrlimit
118	.word sys_setrlimit, sys_pivot_root, sys_prctl, sys_pciconfig_read, sys_pciconfig_write
119/*150*/	.word sys_getsockname, sys_nis_syscall, sys_nis_syscall, sys_poll, sys_getdents64
120	.word sys_nis_syscall, sys_ni_syscall, sys_statfs, sys_fstatfs, sys_oldumount
121/*160*/	.word sys_sched_setaffinity, sys_sched_getaffinity, sys_getdomainname, sys_setdomainname, sys_utrap_install
122	.word sys_quotactl, sys_set_tid_address, sys_mount, sys_ustat, sys_setxattr
123/*170*/	.word sys_lsetxattr, sys_fsetxattr, sys_getxattr, sys_lgetxattr, sys_getdents
124	.word sys_setsid, sys_fchdir, sys_fgetxattr, sys_listxattr, sys_llistxattr
125/*180*/	.word sys_flistxattr, sys_removexattr, sys_lremovexattr, sys_nis_syscall, sys_ni_syscall
126	.word sys_setpgid, sys_fremovexattr, sys_tkill, sys_exit_group, sparc64_newuname
127/*190*/	.word sys_init_module, sparc64_personality, sys_remap_file_pages, sys_epoll_create, sys_epoll_ctl
128	.word sys_epoll_wait, sys_nis_syscall, sys_getppid, sys_nis_syscall, sys_sgetmask
129/*200*/	.word sys_ssetmask, sys_nis_syscall, sys_newlstat, sys_uselib, sys_nis_syscall
130	.word sys_readahead, sys_socketcall, sys_syslog, sys_lookup_dcookie, sys_fadvise64
131/*210*/	.word sys_fadvise64_64, sys_tgkill, sys_waitpid, sys_swapoff, sys_sysinfo
132	.word sys_ipc, sys_nis_syscall, sys_clone, sys_nis_syscall, sys_adjtimex
133/*220*/	.word sys_nis_syscall, sys_ni_syscall, sys_delete_module, sys_ni_syscall, sys_getpgid
134	.word sys_bdflush, sys_sysfs, sys_nis_syscall, sys_setfsuid, sys_setfsgid
135/*230*/	.word sys_select, sys_nis_syscall, sys_nis_syscall, sys_stime, sys_statfs64
136	.word sys_fstatfs64, sys_llseek, sys_mlock, sys_munlock, sys_mlockall
137/*240*/	.word sys_munlockall, sys_sched_setparam, sys_sched_getparam, sys_sched_setscheduler, sys_sched_getscheduler
138	.word sys_sched_yield, sys_sched_get_priority_max, sys_sched_get_priority_min, sys_sched_rr_get_interval, sys_nanosleep
139/*250*/	.word sys64_mremap, sys_sysctl, sys_getsid, sys_fdatasync, sys_nfsservctl
140	.word sys_ni_syscall, sys_clock_settime, sys_clock_gettime, sys_clock_getres, sys_clock_nanosleep
141/*260*/	.word sys_sched_getaffinity, sys_sched_setaffinity, sys_timer_settime, sys_timer_gettime, sys_timer_getoverrun
142	.word sys_timer_delete, sys_timer_create, sys_ni_syscall, sys_io_setup, sys_io_destroy
143/*270*/	.word sys_io_submit, sys_io_cancel, sys_io_getevents, sys_mq_open, sys_mq_unlink
144	.word sys_mq_timedsend, sys_mq_timedreceive, sys_mq_notify, sys_mq_getsetattr, sys_waitid
145/*280*/	.word sys_nis_syscall, sys_add_key, sys_request_key, sys_keyctl
146
147#if defined(CONFIG_SUNOS_EMUL) || defined(CONFIG_SOLARIS_EMUL) || \
148    defined(CONFIG_SOLARIS_EMUL_MODULE)
149	/* Now the 32-bit SunOS syscall table. */
150
151	.align 4
152	.globl sunos_sys_table
153sunos_sys_table:
154/*0*/	.word sunos_indir, sys32_exit, sys_fork
155	.word sunos_read, sunos_write, sunos_open
156	.word sys_close, sunos_wait4, sys_creat
157	.word sys_link, sys_unlink, sunos_execv
158	.word sys_chdir, sunos_nosys, sys32_mknod
159	.word sys_chmod, sys32_lchown16, sunos_brk
160	.word sunos_nosys, sys32_lseek, sunos_getpid
161	.word sunos_nosys, sunos_nosys, sunos_nosys
162	.word sunos_getuid, sunos_nosys, sys_ptrace
163	.word sunos_nosys, sunos_nosys, sunos_nosys
164	.word sunos_nosys, sunos_nosys, sunos_nosys
165	.word sys_access, sunos_nosys, sunos_nosys
166	.word sys_sync, sys_kill, compat_sys_newstat
167	.word sunos_nosys, compat_sys_newlstat, sys_dup
168	.word sys_pipe, sunos_nosys, sunos_nosys
169	.word sunos_nosys, sunos_nosys, sunos_getgid
170	.word sunos_nosys, sunos_nosys
171/*50*/	.word sunos_nosys, sys_acct, sunos_nosys
172	.word sunos_mctl, sunos_ioctl, sys_reboot
173	.word sunos_nosys, sys_symlink, sys_readlink
174	.word sys32_execve, sys_umask, sys_chroot
175	.word compat_sys_newfstat, sunos_nosys, sys_getpagesize
176	.word sys_msync, sys_vfork, sunos_nosys
177	.word sunos_nosys, sunos_sbrk, sunos_sstk
178	.word sunos_mmap, sunos_vadvise, sys_munmap
179	.word sys_mprotect, sys_madvise, sys_vhangup
180	.word sunos_nosys, sys_mincore, sys32_getgroups16
181	.word sys32_setgroups16, sys_getpgrp, sunos_setpgrp
182	.word compat_sys_setitimer, sunos_nosys, sys_swapon
183	.word compat_sys_getitimer, sys_gethostname, sys_sethostname
184	.word sunos_getdtablesize, sys_dup2, sunos_nop
185	.word compat_sys_fcntl, sunos_select, sunos_nop
186	.word sys_fsync, sys32_setpriority, sys32_socket
187	.word sys32_connect, sunos_accept
188/*100*/	.word sys_getpriority, sunos_send, sunos_recv
189	.word sunos_nosys, sys32_bind, sunos_setsockopt
190	.word sys32_listen, sunos_nosys, sunos_sigaction
191	.word sunos_sigblock, sunos_sigsetmask, sys_sigpause
192	.word sys32_sigstack, sys32_recvmsg, sys32_sendmsg
193	.word sunos_nosys, sys32_gettimeofday, compat_sys_getrusage
194	.word sunos_getsockopt, sunos_nosys, sunos_readv
195	.word sunos_writev, sys32_settimeofday, sys32_fchown16
196	.word sys_fchmod, sys32_recvfrom, sys32_setreuid16
197	.word sys32_setregid16, sys_rename, sys_truncate
198	.word sys_ftruncate, sys_flock, sunos_nosys
199	.word sys32_sendto, sys32_shutdown, sys32_socketpair
200	.word sys_mkdir, sys_rmdir, sys32_utimes
201	.word sys32_sigreturn, sunos_nosys, sys32_getpeername
202	.word sunos_gethostid, sunos_nosys, compat_sys_getrlimit
203	.word compat_sys_setrlimit, sunos_killpg, sunos_nosys
204	.word sunos_nosys, sunos_nosys
205/*150*/	.word sys32_getsockname, sunos_nosys, sunos_nosys
206	.word sys_poll, sunos_nosys, sunos_nosys
207	.word sunos_getdirentries, compat_sys_statfs, compat_sys_fstatfs
208	.word sys_oldumount, sunos_nosys, sunos_nosys
209	.word sys_getdomainname, sys_setdomainname
210	.word sunos_nosys, sys_quotactl, sunos_nosys
211	.word sunos_nosys, sys_ustat, sunos_semsys
212	.word sunos_nosys, sunos_shmsys, sunos_audit
213	.word sunos_nosys, sunos_getdents, sys_setsid
214	.word sys_fchdir, sunos_nosys, sunos_nosys
215	.word sunos_nosys, sunos_nosys, sunos_nosys
216	.word sunos_nosys, compat_sys_sigpending, sunos_nosys
217	.word sys_setpgid, sunos_pathconf, sunos_fpathconf
218	.word sunos_sysconf, sunos_uname, 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/*200*/	.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, sunos_nosys
226	.word sunos_nosys, sunos_nosys, sunos_nosys
227	.word sunos_nosys, sunos_nosys, sunos_nosys
228	.word sunos_nosys, sunos_nosys, sunos_nosys
229	.word sunos_nosys, sunos_nosys, sunos_nosys
230	.word sunos_nosys, sunos_nosys, sunos_nosys
231	.word sunos_nosys, sunos_nosys, sunos_nosys
232	.word sunos_nosys, sunos_nosys, sunos_nosys
233	.word sunos_nosys, sunos_nosys, sunos_nosys
234	.word sunos_nosys, sunos_nosys, sunos_nosys
235	.word sunos_nosys, sunos_nosys, sunos_nosys
236	.word sunos_nosys, sunos_nosys, sunos_nosys
237	.word sunos_nosys, sunos_nosys, sunos_nosys
238	.word sunos_nosys, sunos_nosys
239/*250*/	.word sunos_nosys, sunos_nosys, sunos_nosys
240	.word sunos_nosys, sunos_nosys, sunos_nosys
241	.word sunos_nosys, sunos_nosys, sunos_nosys
242	.word sunos_nosys, sunos_nosys, sunos_nosys
243	.word sunos_nosys, sunos_nosys, sunos_nosys
244	.word sunos_nosys, sunos_nosys, sunos_nosys
245	.word sunos_nosys, sunos_nosys, sunos_nosys
246	.word sunos_nosys, sunos_nosys, sunos_nosys
247	.word sunos_nosys, sunos_nosys, sunos_nosys
248	.word sunos_nosys, sunos_nosys, sunos_nosys
249	.word sunos_nosys, sunos_nosys, sunos_nosys
250	.word sunos_nosys
251#endif