[ARM] traps: don't call undef hook functions with spinlock held
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / arch / arm / kernel / calls.S
CommitLineData
1da177e4
LT
1/*
2 * linux/arch/arm/kernel/calls.S
3 *
4 * Copyright (C) 1995-2005 Russell King
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 *
fa1b4f91 10 * This file is included thrice in entry-common.S
1da177e4 11 */
fa1b4f91
AV
12/* 0 */ CALL(sys_restart_syscall)
13 CALL(sys_exit)
14 CALL(sys_fork_wrapper)
15 CALL(sys_read)
16 CALL(sys_write)
17/* 5 */ CALL(sys_open)
18 CALL(sys_close)
19 CALL(sys_ni_syscall) /* was sys_waitpid */
20 CALL(sys_creat)
21 CALL(sys_link)
22/* 10 */ CALL(sys_unlink)
23 CALL(sys_execve_wrapper)
24 CALL(sys_chdir)
25 CALL(OBSOLETE(sys_time)) /* used by libc4 */
26 CALL(sys_mknod)
27/* 15 */ CALL(sys_chmod)
28 CALL(sys_lchown16)
29 CALL(sys_ni_syscall) /* was sys_break */
30 CALL(sys_ni_syscall) /* was sys_stat */
31 CALL(sys_lseek)
32/* 20 */ CALL(sys_getpid)
33 CALL(sys_mount)
34 CALL(OBSOLETE(sys_oldumount)) /* used by libc4 */
35 CALL(sys_setuid16)
36 CALL(sys_getuid16)
37/* 25 */ CALL(OBSOLETE(sys_stime))
38 CALL(sys_ptrace)
39 CALL(OBSOLETE(sys_alarm)) /* used by libc4 */
40 CALL(sys_ni_syscall) /* was sys_fstat */
41 CALL(sys_pause)
42/* 30 */ CALL(OBSOLETE(sys_utime)) /* used by libc4 */
43 CALL(sys_ni_syscall) /* was sys_stty */
44 CALL(sys_ni_syscall) /* was sys_getty */
45 CALL(sys_access)
46 CALL(sys_nice)
47/* 35 */ CALL(sys_ni_syscall) /* was sys_ftime */
48 CALL(sys_sync)
49 CALL(sys_kill)
50 CALL(sys_rename)
51 CALL(sys_mkdir)
52/* 40 */ CALL(sys_rmdir)
53 CALL(sys_dup)
54 CALL(sys_pipe)
55 CALL(sys_times)
56 CALL(sys_ni_syscall) /* was sys_prof */
57/* 45 */ CALL(sys_brk)
58 CALL(sys_setgid16)
59 CALL(sys_getgid16)
60 CALL(sys_ni_syscall) /* was sys_signal */
61 CALL(sys_geteuid16)
62/* 50 */ CALL(sys_getegid16)
63 CALL(sys_acct)
64 CALL(sys_umount)
65 CALL(sys_ni_syscall) /* was sys_lock */
66 CALL(sys_ioctl)
67/* 55 */ CALL(sys_fcntl)
68 CALL(sys_ni_syscall) /* was sys_mpx */
69 CALL(sys_setpgid)
70 CALL(sys_ni_syscall) /* was sys_ulimit */
71 CALL(sys_ni_syscall) /* was sys_olduname */
72/* 60 */ CALL(sys_umask)
73 CALL(sys_chroot)
74 CALL(sys_ustat)
75 CALL(sys_dup2)
76 CALL(sys_getppid)
77/* 65 */ CALL(sys_getpgrp)
78 CALL(sys_setsid)
79 CALL(sys_sigaction)
80 CALL(sys_ni_syscall) /* was sys_sgetmask */
81 CALL(sys_ni_syscall) /* was sys_ssetmask */
82/* 70 */ CALL(sys_setreuid16)
83 CALL(sys_setregid16)
84 CALL(sys_sigsuspend_wrapper)
85 CALL(sys_sigpending)
86 CALL(sys_sethostname)
87/* 75 */ CALL(sys_setrlimit)
88 CALL(OBSOLETE(sys_old_getrlimit)) /* used by libc4 */
89 CALL(sys_getrusage)
90 CALL(sys_gettimeofday)
91 CALL(sys_settimeofday)
92/* 80 */ CALL(sys_getgroups16)
93 CALL(sys_setgroups16)
94 CALL(OBSOLETE(old_select)) /* used by libc4 */
95 CALL(sys_symlink)
96 CALL(sys_ni_syscall) /* was sys_lstat */
97/* 85 */ CALL(sys_readlink)
98 CALL(sys_uselib)
99 CALL(sys_swapon)
100 CALL(sys_reboot)
101 CALL(OBSOLETE(old_readdir)) /* used by libc4 */
102/* 90 */ CALL(OBSOLETE(old_mmap)) /* used by libc4 */
103 CALL(sys_munmap)
104 CALL(sys_truncate)
105 CALL(sys_ftruncate)
106 CALL(sys_fchmod)
107/* 95 */ CALL(sys_fchown16)
108 CALL(sys_getpriority)
109 CALL(sys_setpriority)
110 CALL(sys_ni_syscall) /* was sys_profil */
111 CALL(sys_statfs)
112/* 100 */ CALL(sys_fstatfs)
5a059f1a 113 CALL(sys_ni_syscall) /* sys_ioperm */
6c0fa49b 114 CALL(OBSOLETE(ABI(sys_socketcall, sys_oabi_socketcall)))
fa1b4f91
AV
115 CALL(sys_syslog)
116 CALL(sys_setitimer)
117/* 105 */ CALL(sys_getitimer)
118 CALL(sys_newstat)
119 CALL(sys_newlstat)
120 CALL(sys_newfstat)
121 CALL(sys_ni_syscall) /* was sys_uname */
122/* 110 */ CALL(sys_ni_syscall) /* was sys_iopl */
123 CALL(sys_vhangup)
124 CALL(sys_ni_syscall)
125 CALL(OBSOLETE(sys_syscall)) /* call a syscall */
126 CALL(sys_wait4)
127/* 115 */ CALL(sys_swapoff)
128 CALL(sys_sysinfo)
129 CALL(OBSOLETE(ABI(sys_ipc, sys_oabi_ipc)))
130 CALL(sys_fsync)
131 CALL(sys_sigreturn_wrapper)
132/* 120 */ CALL(sys_clone_wrapper)
133 CALL(sys_setdomainname)
134 CALL(sys_newuname)
5a059f1a 135 CALL(sys_ni_syscall) /* modify_ldt */
fa1b4f91
AV
136 CALL(sys_adjtimex)
137/* 125 */ CALL(sys_mprotect)
138 CALL(sys_sigprocmask)
139 CALL(sys_ni_syscall) /* was sys_create_module */
140 CALL(sys_init_module)
141 CALL(sys_delete_module)
142/* 130 */ CALL(sys_ni_syscall) /* was sys_get_kernel_syms */
143 CALL(sys_quotactl)
144 CALL(sys_getpgid)
145 CALL(sys_fchdir)
146 CALL(sys_bdflush)
147/* 135 */ CALL(sys_sysfs)
148 CALL(sys_personality)
5a059f1a 149 CALL(sys_ni_syscall) /* reserved for afs_syscall */
fa1b4f91
AV
150 CALL(sys_setfsuid16)
151 CALL(sys_setfsgid16)
152/* 140 */ CALL(sys_llseek)
153 CALL(sys_getdents)
154 CALL(sys_select)
155 CALL(sys_flock)
156 CALL(sys_msync)
157/* 145 */ CALL(sys_readv)
158 CALL(sys_writev)
159 CALL(sys_getsid)
160 CALL(sys_fdatasync)
161 CALL(sys_sysctl)
162/* 150 */ CALL(sys_mlock)
163 CALL(sys_munlock)
164 CALL(sys_mlockall)
165 CALL(sys_munlockall)
166 CALL(sys_sched_setparam)
167/* 155 */ CALL(sys_sched_getparam)
168 CALL(sys_sched_setscheduler)
169 CALL(sys_sched_getscheduler)
170 CALL(sys_sched_yield)
171 CALL(sys_sched_get_priority_max)
172/* 160 */ CALL(sys_sched_get_priority_min)
173 CALL(sys_sched_rr_get_interval)
174 CALL(sys_nanosleep)
175 CALL(sys_arm_mremap)
176 CALL(sys_setresuid16)
177/* 165 */ CALL(sys_getresuid16)
5a059f1a 178 CALL(sys_ni_syscall) /* vm86 */
fa1b4f91
AV
179 CALL(sys_ni_syscall) /* was sys_query_module */
180 CALL(sys_poll)
181 CALL(sys_nfsservctl)
182/* 170 */ CALL(sys_setresgid16)
183 CALL(sys_getresgid16)
184 CALL(sys_prctl)
185 CALL(sys_rt_sigreturn_wrapper)
186 CALL(sys_rt_sigaction)
187/* 175 */ CALL(sys_rt_sigprocmask)
188 CALL(sys_rt_sigpending)
189 CALL(sys_rt_sigtimedwait)
190 CALL(sys_rt_sigqueueinfo)
191 CALL(sys_rt_sigsuspend_wrapper)
192/* 180 */ CALL(ABI(sys_pread64, sys_oabi_pread64))
193 CALL(ABI(sys_pwrite64, sys_oabi_pwrite64))
194 CALL(sys_chown16)
195 CALL(sys_getcwd)
196 CALL(sys_capget)
197/* 185 */ CALL(sys_capset)
198 CALL(sys_sigaltstack_wrapper)
199 CALL(sys_sendfile)
5a059f1a
RK
200 CALL(sys_ni_syscall) /* getpmsg */
201 CALL(sys_ni_syscall) /* putpmsg */
fa1b4f91
AV
202/* 190 */ CALL(sys_vfork_wrapper)
203 CALL(sys_getrlimit)
204 CALL(sys_mmap2)
205 CALL(ABI(sys_truncate64, sys_oabi_truncate64))
206 CALL(ABI(sys_ftruncate64, sys_oabi_ftruncate64))
207/* 195 */ CALL(ABI(sys_stat64, sys_oabi_stat64))
208 CALL(ABI(sys_lstat64, sys_oabi_lstat64))
209 CALL(ABI(sys_fstat64, sys_oabi_fstat64))
210 CALL(sys_lchown)
211 CALL(sys_getuid)
212/* 200 */ CALL(sys_getgid)
213 CALL(sys_geteuid)
214 CALL(sys_getegid)
215 CALL(sys_setreuid)
216 CALL(sys_setregid)
217/* 205 */ CALL(sys_getgroups)
218 CALL(sys_setgroups)
219 CALL(sys_fchown)
220 CALL(sys_setresuid)
221 CALL(sys_getresuid)
222/* 210 */ CALL(sys_setresgid)
223 CALL(sys_getresgid)
224 CALL(sys_chown)
225 CALL(sys_setuid)
226 CALL(sys_setgid)
227/* 215 */ CALL(sys_setfsuid)
228 CALL(sys_setfsgid)
229 CALL(sys_getdents64)
230 CALL(sys_pivot_root)
231 CALL(sys_mincore)
232/* 220 */ CALL(sys_madvise)
233 CALL(ABI(sys_fcntl64, sys_oabi_fcntl64))
234 CALL(sys_ni_syscall) /* TUX */
235 CALL(sys_ni_syscall)
236 CALL(sys_gettid)
237/* 225 */ CALL(ABI(sys_readahead, sys_oabi_readahead))
238 CALL(sys_setxattr)
239 CALL(sys_lsetxattr)
240 CALL(sys_fsetxattr)
241 CALL(sys_getxattr)
242/* 230 */ CALL(sys_lgetxattr)
243 CALL(sys_fgetxattr)
244 CALL(sys_listxattr)
245 CALL(sys_llistxattr)
246 CALL(sys_flistxattr)
247/* 235 */ CALL(sys_removexattr)
248 CALL(sys_lremovexattr)
249 CALL(sys_fremovexattr)
250 CALL(sys_tkill)
251 CALL(sys_sendfile64)
252/* 240 */ CALL(sys_futex)
253 CALL(sys_sched_setaffinity)
254 CALL(sys_sched_getaffinity)
255 CALL(sys_io_setup)
256 CALL(sys_io_destroy)
257/* 245 */ CALL(sys_io_getevents)
258 CALL(sys_io_submit)
259 CALL(sys_io_cancel)
260 CALL(sys_exit_group)
261 CALL(sys_lookup_dcookie)
262/* 250 */ CALL(sys_epoll_create)
263 CALL(ABI(sys_epoll_ctl, sys_oabi_epoll_ctl))
264 CALL(ABI(sys_epoll_wait, sys_oabi_epoll_wait))
265 CALL(sys_remap_file_pages)
266 CALL(sys_ni_syscall) /* sys_set_thread_area */
267/* 255 */ CALL(sys_ni_syscall) /* sys_get_thread_area */
268 CALL(sys_set_tid_address)
269 CALL(sys_timer_create)
270 CALL(sys_timer_settime)
271 CALL(sys_timer_gettime)
272/* 260 */ CALL(sys_timer_getoverrun)
273 CALL(sys_timer_delete)
274 CALL(sys_clock_settime)
275 CALL(sys_clock_gettime)
276 CALL(sys_clock_getres)
277/* 265 */ CALL(sys_clock_nanosleep)
278 CALL(sys_statfs64_wrapper)
279 CALL(sys_fstatfs64_wrapper)
280 CALL(sys_tgkill)
281 CALL(sys_utimes)
282/* 270 */ CALL(sys_arm_fadvise64_64)
283 CALL(sys_pciconfig_iobase)
284 CALL(sys_pciconfig_read)
285 CALL(sys_pciconfig_write)
286 CALL(sys_mq_open)
287/* 275 */ CALL(sys_mq_unlink)
288 CALL(sys_mq_timedsend)
289 CALL(sys_mq_timedreceive)
290 CALL(sys_mq_notify)
291 CALL(sys_mq_getsetattr)
292/* 280 */ CALL(sys_waitid)
293 CALL(sys_socket)
99595d02
NP
294 CALL(ABI(sys_bind, sys_oabi_bind))
295 CALL(ABI(sys_connect, sys_oabi_connect))
fa1b4f91
AV
296 CALL(sys_listen)
297/* 285 */ CALL(sys_accept)
298 CALL(sys_getsockname)
299 CALL(sys_getpeername)
300 CALL(sys_socketpair)
301 CALL(sys_send)
99595d02 302/* 290 */ CALL(ABI(sys_sendto, sys_oabi_sendto))
fa1b4f91
AV
303 CALL(sys_recv)
304 CALL(sys_recvfrom)
305 CALL(sys_shutdown)
306 CALL(sys_setsockopt)
307/* 295 */ CALL(sys_getsockopt)
99595d02 308 CALL(ABI(sys_sendmsg, sys_oabi_sendmsg))
fa1b4f91
AV
309 CALL(sys_recvmsg)
310 CALL(ABI(sys_semop, sys_oabi_semop))
311 CALL(sys_semget)
312/* 300 */ CALL(sys_semctl)
313 CALL(sys_msgsnd)
314 CALL(sys_msgrcv)
315 CALL(sys_msgget)
316 CALL(sys_msgctl)
317/* 305 */ CALL(sys_shmat)
318 CALL(sys_shmdt)
319 CALL(sys_shmget)
320 CALL(sys_shmctl)
321 CALL(sys_add_key)
322/* 310 */ CALL(sys_request_key)
323 CALL(sys_keyctl)
324 CALL(ABI(sys_semtimedop, sys_oabi_semtimedop))
325/* vserver */ CALL(sys_ni_syscall)
326 CALL(sys_ioprio_set)
327/* 315 */ CALL(sys_ioprio_get)
328 CALL(sys_inotify_init)
329 CALL(sys_inotify_add_watch)
330 CALL(sys_inotify_rm_watch)
331 CALL(sys_mbind)
332/* 320 */ CALL(sys_get_mempolicy)
333 CALL(sys_set_mempolicy)
bca0b8e7
RK
334 CALL(sys_openat)
335 CALL(sys_mkdirat)
336 CALL(sys_mknodat)
337/* 325 */ CALL(sys_fchownat)
338 CALL(sys_futimesat)
c60afe10 339 CALL(ABI(sys_fstatat64, sys_oabi_fstatat64))
bca0b8e7
RK
340 CALL(sys_unlinkat)
341 CALL(sys_renameat)
342/* 330 */ CALL(sys_linkat)
343 CALL(sys_symlinkat)
344 CALL(sys_readlinkat)
345 CALL(sys_fchmodat)
346 CALL(sys_faccessat)
5a059f1a
RK
347/* 335 */ CALL(sys_ni_syscall) /* eventually pselect6 */
348 CALL(sys_ni_syscall) /* eventually ppoll */
349 CALL(sys_unshare)
350 CALL(sys_set_robust_list)
351 CALL(sys_get_robust_list)
352/* 340 */ CALL(sys_splice)
edd5cd4a 353 CALL(sys_sync_file_range2)
5a059f1a
RK
354 CALL(sys_tee)
355 CALL(sys_vmsplice)
356 CALL(sys_move_pages)
357/* 345 */ CALL(sys_getcpu)
358 CALL(sys_ni_syscall) /* eventually epoll_pwait */
c587e4a6 359 CALL(sys_kexec_load)
c0510791
RK
360 CALL(sys_utimensat)
361 CALL(sys_signalfd)
cbfc0f04 362/* 350 */ CALL(sys_timerfd_create)
c0510791 363 CALL(sys_eventfd)
883042d6 364 CALL(sys_fallocate)
cbfc0f04
UKK
365 CALL(sys_timerfd_settime)
366 CALL(sys_timerfd_gettime)
fa1b4f91
AV
367#ifndef syscalls_counted
368.equ syscalls_padding, ((NR_syscalls + 3) & ~3) - NR_syscalls
369#define syscalls_counted
1da177e4 370#endif
fa1b4f91
AV
371.rept syscalls_padding
372 CALL(sys_ni_syscall)
373.endr