[PATCH] new alpha syscalls
[linux-2.6.git] / arch / alpha / kernel / systbls.S
1 /*
2  * arch/alpha/kernel/systbls.S
3  *
4  * The system call table. 
5  */
6
7 #include <linux/config.h>                       /* CONFIG_OSF4_COMPAT */
8 #include <asm/unistd.h>
9
10         .data
11         .align 3
12         .globl sys_call_table
13 sys_call_table:
14         .quad alpha_ni_syscall                  /* 0 */
15         .quad sys_exit
16         .quad sys_fork
17         .quad sys_read
18         .quad sys_write
19         .quad alpha_ni_syscall                  /* 5 */
20         .quad sys_close
21         .quad 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 osf_brk
32         .quad alpha_ni_syscall
33         .quad sys_lseek
34         .quad sys_getxpid                       /* 20 */
35         .quad 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_pipe
57         .quad 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 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 sys_vfork
81         .quad sys_newstat
82         .quad sys_newlstat
83         .quad alpha_ni_syscall
84         .quad alpha_ni_syscall                  /* 70 */
85         .quad 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 osf_setitimer
99         .quad alpha_ni_syscall
100         .quad alpha_ni_syscall                  /* 85 */
101         .quad 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 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 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 osf_sigstack
128         .quad sys_recvmsg
129         .quad sys_sendmsg
130         .quad alpha_ni_syscall                  /* 115 */
131         .quad osf_gettimeofday
132         .quad osf_getrusage
133         .quad sys_getsockopt
134         .quad alpha_ni_syscall
135 #ifdef CONFIG_OSF4_COMPAT
136         .quad osf_readv                         /* 120 */
137         .quad osf_writev
138 #else
139         .quad sys_readv                         /* 120 */
140         .quad sys_writev
141 #endif
142         .quad 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 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 osf_sigaction
177         .quad alpha_ni_syscall
178         .quad alpha_ni_syscall
179         .quad osf_getdirentries
180         .quad osf_statfs                        /* 160 */
181         .quad osf_fstatfs
182         .quad alpha_ni_syscall
183         .quad alpha_ni_syscall
184         .quad alpha_ni_syscall
185         .quad 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 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 alpha_ni_syscall
246         .quad alpha_ni_syscall                  /* 225 */
247         .quad alpha_ni_syscall
248         .quad alpha_ni_syscall
249         .quad alpha_ni_syscall
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 osf_sysinfo
263         .quad alpha_ni_syscall
264         .quad alpha_ni_syscall
265         .quad 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 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 osf_getsysinfo
278         .quad 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 sys_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_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
470         .size sys_call_table, . - sys_call_table
471         .type sys_call_table, @object
472
473 /* Remember to update everything, kids.  */
474 .ifne (. - sys_call_table) - (NR_SYSCALLS * 8)
475 .err
476 .endif