xref: /openbmc/linux/arch/alpha/kernel/systbls.S (revision ddc141e5)
1/* SPDX-License-Identifier: GPL-2.0 */
2/*
3 * arch/alpha/kernel/systbls.S
4 *
5 * The system call table.
6 */
7
8#include <asm/unistd.h>
9
10	.data
11	.align 3
12	.globl sys_call_table
13sys_call_table:
14	.quad alpha_ni_syscall			/* 0 */
15	.quad sys_exit
16	.quad alpha_fork
17	.quad sys_read
18	.quad sys_write
19	.quad alpha_ni_syscall			/* 5 */
20	.quad sys_close
21	.quad sys_osf_wait4
22	.quad alpha_ni_syscall
23	.quad sys_link
24	.quad sys_unlink			/* 10 */
25	.quad alpha_ni_syscall
26	.quad sys_chdir
27	.quad sys_fchdir
28	.quad sys_mknod
29	.quad sys_chmod				/* 15 */
30	.quad sys_chown
31	.quad sys_osf_brk
32	.quad alpha_ni_syscall
33	.quad sys_lseek
34	.quad sys_getxpid			/* 20 */
35	.quad sys_osf_mount
36	.quad sys_umount
37	.quad sys_setuid
38	.quad sys_getxuid
39	.quad alpha_ni_syscall			/* 25 */
40	.quad sys_ptrace
41	.quad alpha_ni_syscall
42	.quad alpha_ni_syscall
43	.quad alpha_ni_syscall
44	.quad alpha_ni_syscall			/* 30 */
45	.quad alpha_ni_syscall
46	.quad alpha_ni_syscall
47	.quad sys_access
48	.quad alpha_ni_syscall
49	.quad alpha_ni_syscall			/* 35 */
50	.quad sys_sync
51	.quad sys_kill
52	.quad alpha_ni_syscall
53	.quad sys_setpgid
54	.quad alpha_ni_syscall			/* 40 */
55	.quad sys_dup
56	.quad sys_alpha_pipe
57	.quad sys_osf_set_program_attributes
58	.quad alpha_ni_syscall
59	.quad sys_open				/* 45 */
60	.quad alpha_ni_syscall
61	.quad sys_getxgid
62	.quad sys_osf_sigprocmask
63	.quad alpha_ni_syscall
64	.quad alpha_ni_syscall			/* 50 */
65	.quad sys_acct
66	.quad sys_sigpending
67	.quad alpha_ni_syscall
68	.quad sys_ioctl
69	.quad alpha_ni_syscall			/* 55 */
70	.quad alpha_ni_syscall
71	.quad sys_symlink
72	.quad sys_readlink
73	.quad sys_execve
74	.quad sys_umask				/* 60 */
75	.quad sys_chroot
76	.quad alpha_ni_syscall
77	.quad sys_getpgrp
78	.quad sys_getpagesize
79	.quad alpha_ni_syscall			/* 65 */
80	.quad alpha_vfork
81	.quad sys_newstat
82	.quad sys_newlstat
83	.quad alpha_ni_syscall
84	.quad alpha_ni_syscall			/* 70 */
85	.quad sys_osf_mmap
86	.quad alpha_ni_syscall
87	.quad sys_munmap
88	.quad sys_mprotect
89	.quad sys_madvise			/* 75 */
90	.quad sys_vhangup
91	.quad alpha_ni_syscall
92	.quad alpha_ni_syscall
93	.quad sys_getgroups
94	/* map BSD's setpgrp to sys_setpgid for binary compatibility: */
95	.quad sys_setgroups			/* 80 */
96	.quad alpha_ni_syscall
97	.quad sys_setpgid
98	.quad sys_osf_setitimer
99	.quad alpha_ni_syscall
100	.quad alpha_ni_syscall			/* 85 */
101	.quad sys_osf_getitimer
102	.quad sys_gethostname
103	.quad sys_sethostname
104	.quad sys_getdtablesize
105	.quad sys_dup2				/* 90 */
106	.quad sys_newfstat
107	.quad sys_fcntl
108	.quad sys_osf_select
109	.quad sys_poll
110	.quad sys_fsync				/* 95 */
111	.quad sys_setpriority
112	.quad sys_socket
113	.quad sys_connect
114	.quad sys_accept
115	.quad sys_osf_getpriority			/* 100 */
116	.quad sys_send
117	.quad sys_recv
118	.quad sys_sigreturn
119	.quad sys_bind
120	.quad sys_setsockopt			/* 105 */
121	.quad sys_listen
122	.quad alpha_ni_syscall
123	.quad alpha_ni_syscall
124	.quad alpha_ni_syscall
125	.quad alpha_ni_syscall			/* 110 */
126	.quad sys_sigsuspend
127	.quad sys_osf_sigstack
128	.quad sys_recvmsg
129	.quad sys_sendmsg
130	.quad alpha_ni_syscall			/* 115 */
131	.quad sys_osf_gettimeofday
132	.quad sys_osf_getrusage
133	.quad sys_getsockopt
134	.quad alpha_ni_syscall
135#ifdef CONFIG_OSF4_COMPAT
136	.quad sys_osf_readv			/* 120 */
137	.quad sys_osf_writev
138#else
139	.quad sys_readv				/* 120 */
140	.quad sys_writev
141#endif
142	.quad sys_osf_settimeofday
143	.quad sys_fchown
144	.quad sys_fchmod
145	.quad sys_recvfrom			/* 125 */
146	.quad sys_setreuid
147	.quad sys_setregid
148	.quad sys_rename
149	.quad sys_truncate
150	.quad sys_ftruncate			/* 130 */
151	.quad sys_flock
152	.quad sys_setgid
153	.quad sys_sendto
154	.quad sys_shutdown
155	.quad sys_socketpair			/* 135 */
156	.quad sys_mkdir
157	.quad sys_rmdir
158	.quad sys_osf_utimes
159	.quad alpha_ni_syscall
160	.quad alpha_ni_syscall			/* 140 */
161	.quad sys_getpeername
162	.quad alpha_ni_syscall
163	.quad alpha_ni_syscall
164	.quad sys_getrlimit
165	.quad sys_setrlimit			/* 145 */
166	.quad alpha_ni_syscall
167	.quad sys_setsid
168	.quad sys_quotactl
169	.quad alpha_ni_syscall
170	.quad sys_getsockname			/* 150 */
171	.quad alpha_ni_syscall
172	.quad alpha_ni_syscall
173	.quad alpha_ni_syscall
174	.quad alpha_ni_syscall
175	.quad alpha_ni_syscall			/* 155 */
176	.quad sys_osf_sigaction
177	.quad alpha_ni_syscall
178	.quad alpha_ni_syscall
179	.quad sys_osf_getdirentries
180	.quad sys_osf_statfs			/* 160 */
181	.quad sys_osf_fstatfs
182	.quad alpha_ni_syscall
183	.quad alpha_ni_syscall
184	.quad alpha_ni_syscall
185	.quad sys_osf_getdomainname		/* 165 */
186	.quad sys_setdomainname
187	.quad alpha_ni_syscall
188	.quad alpha_ni_syscall
189	.quad alpha_ni_syscall
190	.quad alpha_ni_syscall			/* 170 */
191	.quad alpha_ni_syscall
192	.quad alpha_ni_syscall
193	.quad alpha_ni_syscall
194	.quad alpha_ni_syscall
195	.quad alpha_ni_syscall			/* 175 */
196	.quad alpha_ni_syscall
197	.quad alpha_ni_syscall
198	.quad alpha_ni_syscall
199	.quad alpha_ni_syscall
200	.quad alpha_ni_syscall			/* 180 */
201	.quad alpha_ni_syscall
202	.quad alpha_ni_syscall
203	.quad alpha_ni_syscall
204	.quad alpha_ni_syscall
205	.quad alpha_ni_syscall			/* 185 */
206	.quad alpha_ni_syscall
207	.quad alpha_ni_syscall
208	.quad alpha_ni_syscall
209	.quad alpha_ni_syscall
210	.quad alpha_ni_syscall			/* 190 */
211	.quad alpha_ni_syscall
212	.quad alpha_ni_syscall
213	.quad alpha_ni_syscall
214	.quad alpha_ni_syscall
215	.quad alpha_ni_syscall			/* 195 */
216	.quad alpha_ni_syscall
217	.quad alpha_ni_syscall
218	.quad alpha_ni_syscall
219	/* The OSF swapon has two extra arguments, but we ignore them.  */
220	.quad sys_swapon
221	.quad sys_msgctl			/* 200 */
222	.quad sys_msgget
223	.quad sys_msgrcv
224	.quad sys_msgsnd
225	.quad sys_semctl
226	.quad sys_semget			/* 205 */
227	.quad sys_semop
228	.quad sys_osf_utsname
229	.quad sys_lchown
230	.quad sys_shmat
231	.quad sys_shmctl			/* 210 */
232	.quad sys_shmdt
233	.quad sys_shmget
234	.quad alpha_ni_syscall
235	.quad alpha_ni_syscall
236	.quad alpha_ni_syscall			/* 215 */
237	.quad alpha_ni_syscall
238	.quad sys_msync
239	.quad alpha_ni_syscall
240	.quad alpha_ni_syscall
241	.quad alpha_ni_syscall			/* 220 */
242	.quad alpha_ni_syscall
243	.quad alpha_ni_syscall
244	.quad alpha_ni_syscall
245	.quad sys_osf_stat
246	.quad sys_osf_lstat			/* 225 */
247	.quad sys_osf_fstat
248	.quad sys_osf_statfs64
249	.quad sys_osf_fstatfs64
250	.quad alpha_ni_syscall
251	.quad alpha_ni_syscall			/* 230 */
252	.quad alpha_ni_syscall
253	.quad alpha_ni_syscall
254	.quad sys_getpgid
255	.quad sys_getsid
256	.quad sys_sigaltstack			/* 235 */
257	.quad alpha_ni_syscall
258	.quad alpha_ni_syscall
259	.quad alpha_ni_syscall
260	.quad alpha_ni_syscall
261	.quad alpha_ni_syscall			/* 240 */
262	.quad sys_osf_sysinfo
263	.quad alpha_ni_syscall
264	.quad alpha_ni_syscall
265	.quad sys_osf_proplist_syscall
266	.quad alpha_ni_syscall			/* 245 */
267	.quad alpha_ni_syscall
268	.quad alpha_ni_syscall
269	.quad alpha_ni_syscall
270	.quad alpha_ni_syscall
271	.quad alpha_ni_syscall			/* 250 */
272	.quad sys_osf_usleep_thread
273	.quad alpha_ni_syscall
274	.quad alpha_ni_syscall
275	.quad sys_sysfs
276	.quad alpha_ni_syscall			/* 255 */
277	.quad sys_osf_getsysinfo
278	.quad sys_osf_setsysinfo
279	.quad alpha_ni_syscall
280	.quad alpha_ni_syscall
281	.quad alpha_ni_syscall			/* 260 */
282	.quad alpha_ni_syscall
283	.quad alpha_ni_syscall
284	.quad alpha_ni_syscall
285	.quad alpha_ni_syscall
286	.quad alpha_ni_syscall			/* 265 */
287	.quad alpha_ni_syscall
288	.quad alpha_ni_syscall
289	.quad alpha_ni_syscall
290	.quad alpha_ni_syscall
291	.quad alpha_ni_syscall			/* 270 */
292	.quad alpha_ni_syscall
293	.quad alpha_ni_syscall
294	.quad alpha_ni_syscall
295	.quad alpha_ni_syscall
296	.quad alpha_ni_syscall			/* 275 */
297	.quad alpha_ni_syscall
298	.quad alpha_ni_syscall
299	.quad alpha_ni_syscall
300	.quad alpha_ni_syscall
301	.quad alpha_ni_syscall			/* 280 */
302	.quad alpha_ni_syscall
303	.quad alpha_ni_syscall
304	.quad alpha_ni_syscall
305	.quad alpha_ni_syscall
306	.quad alpha_ni_syscall			/* 285 */
307	.quad alpha_ni_syscall
308	.quad alpha_ni_syscall
309	.quad alpha_ni_syscall
310	.quad alpha_ni_syscall
311	.quad alpha_ni_syscall			/* 290 */
312	.quad alpha_ni_syscall
313	.quad alpha_ni_syscall
314	.quad alpha_ni_syscall
315	.quad alpha_ni_syscall
316	.quad alpha_ni_syscall			/* 295 */
317	.quad alpha_ni_syscall
318	.quad alpha_ni_syscall
319	.quad alpha_ni_syscall
320	.quad alpha_ni_syscall
321/* linux-specific system calls start at 300 */
322	.quad sys_bdflush			/* 300 */
323	.quad sys_sethae
324	.quad sys_mount
325	.quad sys_old_adjtimex
326	.quad sys_swapoff
327	.quad sys_getdents			/* 305 */
328	.quad sys_ni_syscall			/* 306: old create_module */
329	.quad sys_init_module
330	.quad sys_delete_module
331	.quad sys_ni_syscall			/* 309: old get_kernel_syms */
332	.quad sys_syslog			/* 310 */
333	.quad sys_reboot
334	.quad alpha_clone
335	.quad sys_uselib
336	.quad sys_mlock
337	.quad sys_munlock			/* 315 */
338	.quad sys_mlockall
339	.quad sys_munlockall
340	.quad sys_sysinfo
341	.quad sys_sysctl
342	.quad sys_ni_syscall			/* 320 */
343	.quad sys_oldumount
344	.quad sys_swapon
345	.quad sys_times
346	.quad sys_personality
347	.quad sys_setfsuid			/* 325 */
348	.quad sys_setfsgid
349	.quad sys_ustat
350	.quad sys_statfs
351	.quad sys_fstatfs
352	.quad sys_sched_setparam		/* 330 */
353	.quad sys_sched_getparam
354	.quad sys_sched_setscheduler
355	.quad sys_sched_getscheduler
356	.quad sys_sched_yield
357	.quad sys_sched_get_priority_max	/* 335 */
358	.quad sys_sched_get_priority_min
359	.quad sys_sched_rr_get_interval
360	.quad sys_ni_syscall			/* sys_afs_syscall */
361	.quad sys_newuname
362	.quad sys_nanosleep			/* 340 */
363	.quad sys_mremap
364	.quad sys_ni_syscall			/* old nfsservctl */
365	.quad sys_setresuid
366	.quad sys_getresuid
367	.quad sys_pciconfig_read		/* 345 */
368	.quad sys_pciconfig_write
369	.quad sys_ni_syscall			/* 347: old query_module */
370	.quad sys_prctl
371	.quad sys_pread64
372	.quad sys_pwrite64			/* 350 */
373	.quad sys_rt_sigreturn
374	.quad sys_rt_sigaction
375	.quad sys_rt_sigprocmask
376	.quad sys_rt_sigpending
377	.quad sys_rt_sigtimedwait		/* 355 */
378	.quad sys_rt_sigqueueinfo
379	.quad sys_rt_sigsuspend
380	.quad sys_select
381	.quad sys_gettimeofday
382	.quad sys_settimeofday			/* 360 */
383	.quad sys_getitimer
384	.quad sys_setitimer
385	.quad sys_utimes
386	.quad sys_getrusage
387	.quad sys_wait4				/* 365 */
388	.quad sys_adjtimex
389	.quad sys_getcwd
390	.quad sys_capget
391	.quad sys_capset
392	.quad sys_sendfile64			/* 370 */
393	.quad sys_setresgid
394	.quad sys_getresgid
395	.quad sys_ni_syscall			/* sys_dipc */
396	.quad sys_pivot_root
397	.quad sys_mincore			/* 375 */
398	.quad sys_pciconfig_iobase
399	.quad sys_getdents64
400	.quad sys_gettid
401	.quad sys_readahead
402	.quad sys_ni_syscall			/* 380 */
403	.quad sys_tkill
404	.quad sys_setxattr
405	.quad sys_lsetxattr
406	.quad sys_fsetxattr
407	.quad sys_getxattr			/* 385 */
408	.quad sys_lgetxattr
409	.quad sys_fgetxattr
410	.quad sys_listxattr
411	.quad sys_llistxattr
412	.quad sys_flistxattr			/* 390 */
413	.quad sys_removexattr
414	.quad sys_lremovexattr
415	.quad sys_fremovexattr
416	.quad sys_futex
417	.quad sys_sched_setaffinity		/* 395 */
418	.quad sys_sched_getaffinity
419	.quad sys_ni_syscall			/* 397, tux */
420	.quad sys_io_setup
421	.quad sys_io_destroy
422	.quad sys_io_getevents			/* 400 */
423	.quad sys_io_submit
424	.quad sys_io_cancel
425	.quad sys_ni_syscall			/* 403, sys_alloc_hugepages */
426	.quad sys_ni_syscall			/* 404, sys_free_hugepages */
427	.quad sys_exit_group			/* 405 */
428	.quad sys_lookup_dcookie
429	.quad sys_epoll_create
430	.quad sys_epoll_ctl
431	.quad sys_epoll_wait
432	.quad sys_remap_file_pages		/* 410 */
433	.quad sys_set_tid_address
434	.quad sys_restart_syscall
435	.quad sys_fadvise64
436	.quad sys_timer_create
437	.quad sys_timer_settime			/* 415 */
438	.quad sys_timer_gettime
439	.quad sys_timer_getoverrun
440	.quad sys_timer_delete
441	.quad sys_clock_settime
442	.quad sys_clock_gettime			/* 420 */
443	.quad sys_clock_getres
444	.quad sys_clock_nanosleep
445	.quad sys_semtimedop
446	.quad sys_tgkill
447	.quad sys_stat64			/* 425 */
448	.quad sys_lstat64
449	.quad sys_fstat64
450	.quad sys_ni_syscall			/* sys_vserver */
451	.quad sys_ni_syscall			/* sys_mbind */
452	.quad sys_ni_syscall			/* sys_get_mempolicy */
453	.quad sys_ni_syscall			/* sys_set_mempolicy */
454	.quad sys_mq_open
455	.quad sys_mq_unlink
456	.quad sys_mq_timedsend
457	.quad sys_mq_timedreceive		/* 435 */
458	.quad sys_mq_notify
459	.quad sys_mq_getsetattr
460	.quad sys_waitid
461	.quad sys_add_key
462	.quad sys_request_key			/* 440 */
463	.quad sys_keyctl
464	.quad sys_ioprio_set
465	.quad sys_ioprio_get
466	.quad sys_inotify_init
467	.quad sys_inotify_add_watch		/* 445 */
468	.quad sys_inotify_rm_watch
469	.quad sys_fdatasync
470	.quad sys_kexec_load
471	.quad sys_migrate_pages
472	.quad sys_openat			/* 450 */
473	.quad sys_mkdirat
474	.quad sys_mknodat
475	.quad sys_fchownat
476	.quad sys_futimesat
477	.quad sys_fstatat64			/* 455 */
478	.quad sys_unlinkat
479	.quad sys_renameat
480	.quad sys_linkat
481	.quad sys_symlinkat
482	.quad sys_readlinkat			/* 460 */
483	.quad sys_fchmodat
484	.quad sys_faccessat
485	.quad sys_pselect6
486	.quad sys_ppoll
487	.quad sys_unshare			/* 465 */
488	.quad sys_set_robust_list
489	.quad sys_get_robust_list
490	.quad sys_splice
491	.quad sys_sync_file_range
492	.quad sys_tee				/* 470 */
493	.quad sys_vmsplice
494	.quad sys_move_pages
495	.quad sys_getcpu
496	.quad sys_epoll_pwait
497	.quad sys_utimensat			/* 475 */
498	.quad sys_signalfd
499	.quad sys_ni_syscall			/* sys_timerfd */
500	.quad sys_eventfd
501	.quad sys_recvmmsg
502	.quad sys_fallocate			/* 480 */
503	.quad sys_timerfd_create
504	.quad sys_timerfd_settime
505	.quad sys_timerfd_gettime
506	.quad sys_signalfd4
507	.quad sys_eventfd2			/* 485 */
508	.quad sys_epoll_create1
509	.quad sys_dup3
510	.quad sys_pipe2
511	.quad sys_inotify_init1
512	.quad sys_preadv			/* 490 */
513	.quad sys_pwritev
514	.quad sys_rt_tgsigqueueinfo
515	.quad sys_perf_event_open
516	.quad sys_fanotify_init
517	.quad sys_fanotify_mark			/* 495 */
518	.quad sys_prlimit64
519	.quad sys_name_to_handle_at
520	.quad sys_open_by_handle_at
521	.quad sys_clock_adjtime
522	.quad sys_syncfs			/* 500 */
523	.quad sys_setns
524	.quad sys_accept4
525	.quad sys_sendmmsg
526	.quad sys_process_vm_readv
527	.quad sys_process_vm_writev		/* 505 */
528	.quad sys_kcmp
529	.quad sys_finit_module
530	.quad sys_sched_setattr
531	.quad sys_sched_getattr
532	.quad sys_renameat2			/* 510 */
533	.quad sys_getrandom
534	.quad sys_memfd_create
535	.quad sys_execveat
536	.quad sys_seccomp
537	.quad sys_bpf				/* 515 */
538	.quad sys_userfaultfd
539	.quad sys_membarrier
540	.quad sys_mlock2
541	.quad sys_copy_file_range
542	.quad sys_preadv2			/* 520 */
543	.quad sys_pwritev2
544	.quad sys_statx
545
546	.size sys_call_table, . - sys_call_table
547	.type sys_call_table, @object
548
549/* Remember to update everything, kids.  */
550.ifne (. - sys_call_table) - (NR_SYSCALLS * 8)
551.err
552.endif
553