| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | /*    System Call Table | 
 | 2 |  * | 
 | 3 |  *    Copyright (C) 1999-2004 Matthew Wilcox <willy at parisc-linux.org> | 
 | 4 |  *    Copyright (C) 2000-2001 John Marvin <jsm at parisc-linux.org> | 
 | 5 |  *    Copyright (C) 2000 Alan Modra <amodra at parisc-linux.org> | 
 | 6 |  *    Copyright (C) 2000-2003 Paul Bame <bame at parisc-linux.org> | 
 | 7 |  *    Copyright (C) 2000 Philipp Rumpf <prumpf with tux.org> | 
 | 8 |  *    Copyright (C) 2000 Michael Ang <mang with subcarrier.org> | 
 | 9 |  *    Copyright (C) 2000 David Huggins-Daines <dhd with pobox.org> | 
 | 10 |  *    Copyright (C) 2000 Grant Grundler <grundler at parisc-linux.org> | 
 | 11 |  *    Copyright (C) 2001 Richard Hirst <rhirst with parisc-linux.org> | 
 | 12 |  *    Copyright (C) 2001-2002 Ryan Bradetich <rbrad at parisc-linux.org> | 
| Helge Deller | a8f44e3 | 2007-01-28 14:58:52 +0100 | [diff] [blame] | 13 |  *    Copyright (C) 2001-2007 Helge Deller <deller at parisc-linux.org> | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 14 |  *    Copyright (C) 2000-2001 Thomas Bogendoerfer <tsbogend at parisc-linux.org> | 
 | 15 |  *    Copyright (C) 2002 Randolph Chung <tausq with parisc-linux.org> | 
| Kyle McMartin | 6ca773c | 2006-04-20 04:44:07 +0000 | [diff] [blame] | 16 |  *    Copyright (C) 2005-2006 Kyle McMartin <kyle at parisc-linux.org> | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 17 |  * | 
 | 18 |  *    This program is free software; you can redistribute it and/or modify | 
 | 19 |  *    it under the terms of the GNU General Public License as published by | 
 | 20 |  *    the Free Software Foundation; either version 2 of the License, or | 
 | 21 |  *    (at your option) any later version. | 
 | 22 |  * | 
 | 23 |  *    This program is distributed in the hope that it will be useful, | 
 | 24 |  *    but WITHOUT ANY WARRANTY; without even the implied warranty of | 
 | 25 |  *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
 | 26 |  *    GNU General Public License for more details. | 
 | 27 |  * | 
 | 28 |  *    You should have received a copy of the GNU General Public License | 
 | 29 |  *    along with this program; if not, write to the Free Software | 
 | 30 |  *    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA | 
 | 31 |  */ | 
 | 32 |  | 
| Grant Grundler | 413059f | 2005-10-21 22:46:48 -0400 | [diff] [blame] | 33 | #if defined(CONFIG_64BIT) && !defined(SYSCALL_TABLE_64BIT) | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 34 | /* Use ENTRY_SAME for 32-bit syscalls which are the same on wide and | 
 | 35 |  * narrow palinux.  Use ENTRY_DIFF for those where a 32-bit specific | 
 | 36 |  * implementation is required on wide palinux.  Use ENTRY_COMP where | 
 | 37 |  * the compatability layer has a useful 32-bit implementation. | 
 | 38 |  */ | 
 | 39 | #define ENTRY_SAME(_name_) .dword sys_##_name_ | 
 | 40 | #define ENTRY_DIFF(_name_) .dword sys32_##_name_ | 
 | 41 | #define ENTRY_UHOH(_name_) .dword sys32_##unimplemented | 
 | 42 | #define ENTRY_OURS(_name_) .dword parisc_##_name_ | 
 | 43 | #define ENTRY_COMP(_name_) .dword compat_sys_##_name_ | 
| Grant Grundler | 413059f | 2005-10-21 22:46:48 -0400 | [diff] [blame] | 44 | #elif defined(CONFIG_64BIT) && defined(SYSCALL_TABLE_64BIT) | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 45 | #define ENTRY_SAME(_name_) .dword sys_##_name_ | 
 | 46 | #define ENTRY_DIFF(_name_) .dword sys_##_name_ | 
 | 47 | #define ENTRY_UHOH(_name_) .dword sys_##_name_ | 
 | 48 | #define ENTRY_OURS(_name_) .dword sys_##_name_ | 
 | 49 | #define ENTRY_COMP(_name_) .dword sys_##_name_ | 
 | 50 | #else | 
 | 51 | #define ENTRY_SAME(_name_) .word sys_##_name_ | 
 | 52 | #define ENTRY_DIFF(_name_) .word sys_##_name_ | 
 | 53 | #define ENTRY_UHOH(_name_) .word sys_##_name_ | 
 | 54 | #define ENTRY_OURS(_name_) .word parisc_##_name_ | 
 | 55 | #define ENTRY_COMP(_name_) .word sys_##_name_ | 
 | 56 | #endif | 
 | 57 |  | 
 | 58 | 	ENTRY_SAME(restart_syscall)	/* 0 */ | 
 | 59 | 	ENTRY_SAME(exit) | 
 | 60 | 	ENTRY_SAME(fork_wrapper) | 
 | 61 | 	ENTRY_SAME(read) | 
 | 62 | 	ENTRY_SAME(write) | 
 | 63 | 	ENTRY_SAME(open)		/* 5 */ | 
 | 64 | 	ENTRY_SAME(close) | 
 | 65 | 	ENTRY_SAME(waitpid) | 
 | 66 | 	ENTRY_SAME(creat) | 
 | 67 | 	ENTRY_SAME(link) | 
 | 68 | 	ENTRY_SAME(unlink)		/* 10 */ | 
 | 69 | 	ENTRY_DIFF(execve_wrapper) | 
 | 70 | 	ENTRY_SAME(chdir) | 
 | 71 | 	/* See comments in kernel/time.c!!! Maybe we don't need this? */ | 
 | 72 | 	ENTRY_COMP(time) | 
 | 73 | 	ENTRY_SAME(mknod) | 
 | 74 | 	ENTRY_SAME(chmod)		/* 15 */ | 
 | 75 | 	ENTRY_SAME(lchown) | 
 | 76 | 	ENTRY_SAME(socket) | 
 | 77 | 	/* struct stat is MAYBE identical wide and narrow ?? */ | 
 | 78 | 	ENTRY_COMP(newstat) | 
 | 79 | 	ENTRY_DIFF(lseek) | 
 | 80 | 	ENTRY_SAME(getpid)		/* 20 */ | 
 | 81 | 	/* the 'void * data' parameter may need re-packing in wide */ | 
 | 82 | 	ENTRY_COMP(mount) | 
 | 83 | 	/* concerned about struct sockaddr in wide/narrow */ | 
 | 84 | 	/* ---> I think sockaddr is OK unless the compiler packs the struct */ | 
 | 85 | 	/*      differently to align the char array */ | 
 | 86 | 	ENTRY_SAME(bind) | 
 | 87 | 	ENTRY_SAME(setuid) | 
 | 88 | 	ENTRY_SAME(getuid) | 
 | 89 | 	ENTRY_COMP(stime)		/* 25 */ | 
| Helge Deller | 81e192d | 2008-10-17 18:48:36 +0000 | [diff] [blame] | 90 | 	ENTRY_COMP(ptrace) | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 91 | 	ENTRY_SAME(alarm) | 
 | 92 | 	/* see stat comment */ | 
 | 93 | 	ENTRY_COMP(newfstat) | 
 | 94 | 	ENTRY_SAME(pause) | 
 | 95 | 	/* struct utimbuf uses time_t which might vary */ | 
 | 96 | 	ENTRY_COMP(utime)		/* 30 */ | 
 | 97 | 	/* struct sockaddr... */ | 
 | 98 | 	ENTRY_SAME(connect) | 
 | 99 | 	ENTRY_SAME(listen) | 
 | 100 | 	ENTRY_SAME(access) | 
 | 101 | 	ENTRY_SAME(nice) | 
 | 102 | 	/* struct sockaddr... */ | 
 | 103 | 	ENTRY_SAME(accept)		/* 35 */ | 
 | 104 | 	ENTRY_SAME(sync) | 
 | 105 | 	ENTRY_SAME(kill) | 
 | 106 | 	ENTRY_SAME(rename) | 
 | 107 | 	ENTRY_SAME(mkdir) | 
 | 108 | 	ENTRY_SAME(rmdir)		/* 40 */ | 
 | 109 | 	ENTRY_SAME(dup) | 
 | 110 | 	ENTRY_SAME(pipe) | 
 | 111 | 	ENTRY_COMP(times) | 
 | 112 | 	/* struct sockaddr... */ | 
 | 113 | 	ENTRY_SAME(getsockname) | 
 | 114 | 	/* it seems possible brk() could return a >4G pointer... */ | 
 | 115 | 	ENTRY_SAME(brk)			/* 45 */ | 
 | 116 | 	ENTRY_SAME(setgid) | 
 | 117 | 	ENTRY_SAME(getgid) | 
 | 118 | 	ENTRY_SAME(signal) | 
 | 119 | 	ENTRY_SAME(geteuid) | 
 | 120 | 	ENTRY_SAME(getegid)		/* 50 */ | 
 | 121 | 	ENTRY_SAME(acct) | 
 | 122 | 	ENTRY_SAME(umount) | 
 | 123 | 	/* struct sockaddr... */ | 
 | 124 | 	ENTRY_SAME(getpeername) | 
 | 125 | 	ENTRY_COMP(ioctl) | 
 | 126 | 	ENTRY_COMP(fcntl)		/* 55 */ | 
 | 127 | 	ENTRY_SAME(socketpair) | 
 | 128 | 	ENTRY_SAME(setpgid) | 
 | 129 | 	ENTRY_SAME(send) | 
| Kyle McMartin | 75a4958 | 2006-08-27 11:12:13 -0400 | [diff] [blame] | 130 | 	ENTRY_OURS(newuname) | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 131 | 	ENTRY_SAME(umask)		/* 60 */ | 
 | 132 | 	ENTRY_SAME(chroot) | 
| Christoph Hellwig | 2b1c6bd | 2008-11-28 10:09:09 +0100 | [diff] [blame] | 133 | 	ENTRY_COMP(ustat) | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 134 | 	ENTRY_SAME(dup2) | 
 | 135 | 	ENTRY_SAME(getppid) | 
 | 136 | 	ENTRY_SAME(getpgrp)		/* 65 */ | 
 | 137 | 	ENTRY_SAME(setsid) | 
 | 138 | 	ENTRY_SAME(pivot_root) | 
 | 139 | 	/* I don't like this */ | 
 | 140 | 	ENTRY_UHOH(sgetmask) | 
 | 141 | 	ENTRY_UHOH(ssetmask) | 
 | 142 | 	ENTRY_SAME(setreuid)		/* 70 */ | 
 | 143 | 	ENTRY_SAME(setregid) | 
 | 144 | 	ENTRY_SAME(mincore) | 
 | 145 | 	ENTRY_COMP(sigpending) | 
 | 146 | 	ENTRY_SAME(sethostname) | 
 | 147 | 	/* Following 3 have linux-common-code structs containing longs -( */ | 
 | 148 | 	ENTRY_COMP(setrlimit)		/* 75 */ | 
 | 149 | 	ENTRY_COMP(getrlimit) | 
 | 150 | 	ENTRY_COMP(getrusage) | 
 | 151 | 	/* struct timeval and timezone are maybe?? consistent wide and narrow */ | 
| Christoph Hellwig | b418da1 | 2008-10-15 22:02:06 -0700 | [diff] [blame] | 152 | 	ENTRY_COMP(gettimeofday) | 
 | 153 | 	ENTRY_COMP(settimeofday) | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 154 | 	ENTRY_SAME(getgroups)		/* 80 */ | 
 | 155 | 	ENTRY_SAME(setgroups) | 
 | 156 | 	/* struct socketaddr... */ | 
 | 157 | 	ENTRY_SAME(sendto) | 
 | 158 | 	ENTRY_SAME(symlink) | 
 | 159 | 	/* see stat comment */ | 
 | 160 | 	ENTRY_COMP(newlstat) | 
 | 161 | 	ENTRY_SAME(readlink)		/* 85 */ | 
 | 162 | 	ENTRY_SAME(ni_syscall)	/* was uselib */ | 
 | 163 | 	ENTRY_SAME(swapon) | 
 | 164 | 	ENTRY_SAME(reboot) | 
 | 165 | 	ENTRY_SAME(mmap2) | 
 | 166 | 	ENTRY_SAME(mmap)		/* 90 */ | 
 | 167 | 	ENTRY_SAME(munmap) | 
 | 168 | 	ENTRY_SAME(truncate) | 
 | 169 | 	ENTRY_SAME(ftruncate) | 
 | 170 | 	ENTRY_SAME(fchmod) | 
 | 171 | 	ENTRY_SAME(fchown)		/* 95 */ | 
 | 172 | 	ENTRY_SAME(getpriority) | 
 | 173 | 	ENTRY_SAME(setpriority) | 
 | 174 | 	ENTRY_SAME(recv) | 
 | 175 | 	ENTRY_COMP(statfs) | 
 | 176 | 	ENTRY_COMP(fstatfs)		/* 100 */ | 
 | 177 | 	ENTRY_SAME(stat64) | 
 | 178 | 	ENTRY_SAME(ni_syscall)	/* was socketcall */ | 
 | 179 | 	ENTRY_SAME(syslog) | 
 | 180 | 	/* even though manpage says struct timeval contains longs, ours has | 
 | 181 | 	 * time_t and suseconds_t -- both of which are safe wide/narrow */ | 
 | 182 | 	ENTRY_COMP(setitimer) | 
 | 183 | 	ENTRY_COMP(getitimer)		/* 105 */ | 
 | 184 | 	ENTRY_SAME(capget) | 
 | 185 | 	ENTRY_SAME(capset) | 
 | 186 | 	ENTRY_OURS(pread64) | 
 | 187 | 	ENTRY_OURS(pwrite64) | 
 | 188 | 	ENTRY_SAME(getcwd)		/* 110 */ | 
 | 189 | 	ENTRY_SAME(vhangup) | 
 | 190 | 	ENTRY_SAME(fstat64) | 
 | 191 | 	ENTRY_SAME(vfork_wrapper) | 
 | 192 | 	/* struct rusage contains longs... */ | 
 | 193 | 	ENTRY_COMP(wait4) | 
 | 194 | 	ENTRY_SAME(swapoff)		/* 115 */ | 
| Kyle McMartin | d4d23ad | 2007-02-10 01:46:00 -0800 | [diff] [blame] | 195 | 	ENTRY_COMP(sysinfo) | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 196 | 	ENTRY_SAME(shutdown) | 
 | 197 | 	ENTRY_SAME(fsync) | 
 | 198 | 	ENTRY_SAME(madvise) | 
 | 199 | 	ENTRY_SAME(clone_wrapper)	/* 120 */ | 
 | 200 | 	ENTRY_SAME(setdomainname) | 
 | 201 | 	ENTRY_DIFF(sendfile) | 
 | 202 | 	/* struct sockaddr... */ | 
 | 203 | 	ENTRY_SAME(recvfrom) | 
 | 204 | 	/* struct timex contains longs */ | 
| Stephen Rothwell | 3158e94 | 2006-03-26 01:37:29 -0800 | [diff] [blame] | 205 | 	ENTRY_COMP(adjtimex) | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 206 | 	ENTRY_SAME(mprotect)		/* 125 */ | 
 | 207 | 	/* old_sigset_t forced to 32 bits.  Beware glibc sigset_t */ | 
 | 208 | 	ENTRY_COMP(sigprocmask) | 
 | 209 | 	ENTRY_SAME(ni_syscall)	/* create_module */ | 
 | 210 | 	ENTRY_SAME(init_module) | 
 | 211 | 	ENTRY_SAME(delete_module) | 
 | 212 | 	ENTRY_SAME(ni_syscall)		/* 130: get_kernel_syms */ | 
 | 213 | 	/* time_t inside struct dqblk */ | 
 | 214 | 	ENTRY_SAME(quotactl) | 
 | 215 | 	ENTRY_SAME(getpgid) | 
 | 216 | 	ENTRY_SAME(fchdir) | 
 | 217 | 	ENTRY_SAME(bdflush) | 
 | 218 | 	ENTRY_SAME(sysfs)		/* 135 */ | 
| Kyle McMartin | 75a4958 | 2006-08-27 11:12:13 -0400 | [diff] [blame] | 219 | 	ENTRY_OURS(personality) | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 220 | 	ENTRY_SAME(ni_syscall)	/* for afs_syscall */ | 
 | 221 | 	ENTRY_SAME(setfsuid) | 
 | 222 | 	ENTRY_SAME(setfsgid) | 
 | 223 | 	/* I think this might work */ | 
 | 224 | 	ENTRY_SAME(llseek)		/* 140 */ | 
| Kyle McMartin | 88a7907 | 2007-06-29 03:38:10 -0400 | [diff] [blame] | 225 | 	ENTRY_COMP(getdents) | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 226 | 	/* it is POSSIBLE that select will be OK because even though fd_set | 
 | 227 | 	 * contains longs, the macros and sizes are clever. */ | 
 | 228 | 	ENTRY_COMP(select) | 
 | 229 | 	ENTRY_SAME(flock) | 
 | 230 | 	ENTRY_SAME(msync) | 
 | 231 | 	/* struct iovec contains pointers */ | 
 | 232 | 	ENTRY_COMP(readv)		/* 145 */ | 
 | 233 | 	ENTRY_COMP(writev) | 
 | 234 | 	ENTRY_SAME(getsid) | 
 | 235 | 	ENTRY_SAME(fdatasync) | 
 | 236 | 	/* struct __sysctl_args is a mess */ | 
 | 237 | 	ENTRY_DIFF(sysctl) | 
 | 238 | 	ENTRY_SAME(mlock)		/* 150 */ | 
 | 239 | 	ENTRY_SAME(munlock) | 
 | 240 | 	ENTRY_SAME(mlockall) | 
 | 241 | 	ENTRY_SAME(munlockall) | 
 | 242 | 	/* struct sched_param is ok for now */ | 
 | 243 | 	ENTRY_SAME(sched_setparam) | 
 | 244 | 	ENTRY_SAME(sched_getparam)	/* 155 */ | 
 | 245 | 	ENTRY_SAME(sched_setscheduler) | 
 | 246 | 	ENTRY_SAME(sched_getscheduler) | 
 | 247 | 	ENTRY_SAME(sched_yield) | 
 | 248 | 	ENTRY_SAME(sched_get_priority_max) | 
 | 249 | 	ENTRY_SAME(sched_get_priority_min)	/* 160 */ | 
 | 250 | 	/* These 2 would've worked if someone had defined struct timespec | 
 | 251 | 	 * carefully, like timeval for example (which is about the same). | 
 | 252 | 	 * Unfortunately it contains a long :-( */ | 
 | 253 | 	ENTRY_DIFF(sched_rr_get_interval) | 
 | 254 | 	ENTRY_COMP(nanosleep) | 
 | 255 | 	ENTRY_SAME(mremap) | 
 | 256 | 	ENTRY_SAME(setresuid) | 
 | 257 | 	ENTRY_SAME(getresuid)		/* 165 */ | 
 | 258 | 	ENTRY_DIFF(sigaltstack_wrapper) | 
 | 259 | 	ENTRY_SAME(ni_syscall)		/* query_module */ | 
 | 260 | 	ENTRY_SAME(poll) | 
 | 261 | 	/* structs contain pointers and an in_addr... */ | 
 | 262 | 	ENTRY_COMP(nfsservctl) | 
 | 263 | 	ENTRY_SAME(setresgid)		/* 170 */ | 
 | 264 | 	ENTRY_SAME(getresgid) | 
 | 265 | 	ENTRY_SAME(prctl) | 
 | 266 | 	/* signals need a careful review */ | 
 | 267 | 	ENTRY_SAME(rt_sigreturn_wrapper) | 
 | 268 | 	ENTRY_DIFF(rt_sigaction) | 
 | 269 | 	ENTRY_DIFF(rt_sigprocmask)	/* 175 */ | 
 | 270 | 	ENTRY_DIFF(rt_sigpending) | 
 | 271 | 	ENTRY_COMP(rt_sigtimedwait) | 
 | 272 | 	/* even though the struct siginfo_t is different, it appears like | 
 | 273 | 	 * all the paths use values which should be same wide and narrow. | 
 | 274 | 	 * Also the struct is padded to 128 bytes which means we don't have | 
 | 275 | 	 * to worry about faulting trying to copy in a larger 64-bit | 
 | 276 | 	 * struct from a 32-bit user-space app. | 
 | 277 | 	 */ | 
| Kyle McMartin | d104f11 | 2007-02-08 19:38:54 -0500 | [diff] [blame] | 278 | 	ENTRY_COMP(rt_sigqueueinfo) | 
| Kyle McMartin | 4650f0a | 2007-01-08 16:28:06 -0500 | [diff] [blame] | 279 | 	ENTRY_COMP(rt_sigsuspend) | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 280 | 	ENTRY_SAME(chown)		/* 180 */ | 
 | 281 | 	/* setsockopt() used by iptables: SO_SET_REPLACE/SO_SET_ADD_COUNTERS */ | 
 | 282 | 	ENTRY_COMP(setsockopt) | 
| Kyle McMartin | b29eac4 | 2006-02-19 11:02:50 -0700 | [diff] [blame] | 283 | 	ENTRY_COMP(getsockopt) | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 284 | 	ENTRY_COMP(sendmsg) | 
 | 285 | 	ENTRY_COMP(recvmsg) | 
 | 286 | 	ENTRY_SAME(semop)		/* 185 */ | 
 | 287 | 	ENTRY_SAME(semget) | 
 | 288 | 	ENTRY_DIFF(semctl) | 
 | 289 | 	ENTRY_DIFF(msgsnd) | 
 | 290 | 	ENTRY_DIFF(msgrcv) | 
 | 291 | 	ENTRY_SAME(msgget)		/* 190 */ | 
 | 292 | 	ENTRY_SAME(msgctl) | 
| Stephen Rothwell | 7d87e14 | 2005-05-01 08:59:12 -0700 | [diff] [blame] | 293 | 	ENTRY_SAME(shmat) | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 294 | 	ENTRY_SAME(shmdt) | 
 | 295 | 	ENTRY_SAME(shmget) | 
 | 296 | 	ENTRY_SAME(shmctl)		/* 195 */ | 
 | 297 | 	ENTRY_SAME(ni_syscall)		/* streams1 */ | 
 | 298 | 	ENTRY_SAME(ni_syscall)		/* streams2 */ | 
 | 299 | 	ENTRY_SAME(lstat64) | 
 | 300 | 	ENTRY_OURS(truncate64) | 
 | 301 | 	ENTRY_OURS(ftruncate64)		/* 200 */ | 
 | 302 | 	ENTRY_SAME(getdents64) | 
 | 303 | 	ENTRY_COMP(fcntl64) | 
 | 304 | 	ENTRY_SAME(ni_syscall)	/* attrctl -- dead */ | 
 | 305 | 	ENTRY_SAME(ni_syscall)	/* acl_get -- dead */ | 
 | 306 | 	ENTRY_SAME(ni_syscall)		/* 205 (acl_set -- dead) */ | 
 | 307 | 	ENTRY_SAME(gettid) | 
 | 308 | 	ENTRY_OURS(readahead) | 
 | 309 | 	ENTRY_SAME(tkill) | 
 | 310 | 	ENTRY_SAME(sendfile64) | 
 | 311 | 	ENTRY_COMP(futex)		/* 210 */ | 
 | 312 | 	ENTRY_COMP(sched_setaffinity) | 
 | 313 | 	ENTRY_COMP(sched_getaffinity) | 
 | 314 | 	ENTRY_SAME(ni_syscall)	/* set_thread_area */ | 
 | 315 | 	ENTRY_SAME(ni_syscall)	/* get_thread_area */ | 
 | 316 | 	ENTRY_SAME(io_setup)		/* 215 */ | 
 | 317 | 	ENTRY_SAME(io_destroy) | 
 | 318 | 	ENTRY_SAME(io_getevents) | 
 | 319 | 	ENTRY_SAME(io_submit) | 
 | 320 | 	ENTRY_SAME(io_cancel) | 
 | 321 | 	ENTRY_SAME(alloc_hugepages)	/* 220 */ | 
 | 322 | 	ENTRY_SAME(free_hugepages) | 
 | 323 | 	ENTRY_SAME(exit_group) | 
 | 324 | 	ENTRY_DIFF(lookup_dcookie) | 
 | 325 | 	ENTRY_SAME(epoll_create) | 
 | 326 | 	ENTRY_SAME(epoll_ctl)		/* 225 */ | 
 | 327 | 	ENTRY_SAME(epoll_wait) | 
 | 328 |  	ENTRY_SAME(remap_file_pages) | 
 | 329 | 	ENTRY_SAME(semtimedop) | 
 | 330 | 	ENTRY_SAME(mq_open) | 
 | 331 | 	ENTRY_SAME(mq_unlink)		/* 230 */ | 
 | 332 | 	ENTRY_SAME(mq_timedsend) | 
 | 333 | 	ENTRY_SAME(mq_timedreceive) | 
 | 334 | 	ENTRY_SAME(mq_notify) | 
 | 335 | 	ENTRY_SAME(mq_getsetattr) | 
 | 336 | 	ENTRY_COMP(waitid)		/* 235 */ | 
 | 337 | 	ENTRY_OURS(fadvise64_64) | 
 | 338 | 	ENTRY_SAME(set_tid_address) | 
 | 339 | 	ENTRY_SAME(setxattr) | 
 | 340 | 	ENTRY_SAME(lsetxattr) | 
 | 341 | 	ENTRY_SAME(fsetxattr)		/* 240 */ | 
 | 342 | 	ENTRY_SAME(getxattr) | 
 | 343 | 	ENTRY_SAME(lgetxattr) | 
 | 344 | 	ENTRY_SAME(fgetxattr) | 
 | 345 | 	ENTRY_SAME(listxattr) | 
 | 346 | 	ENTRY_SAME(llistxattr)		/* 245 */ | 
 | 347 | 	ENTRY_SAME(flistxattr) | 
 | 348 | 	ENTRY_SAME(removexattr) | 
 | 349 | 	ENTRY_SAME(lremovexattr) | 
 | 350 | 	ENTRY_SAME(fremovexattr) | 
 | 351 | 	ENTRY_COMP(timer_create)	/* 250 */ | 
 | 352 | 	ENTRY_COMP(timer_settime) | 
 | 353 | 	ENTRY_COMP(timer_gettime) | 
 | 354 | 	ENTRY_SAME(timer_getoverrun) | 
 | 355 | 	ENTRY_SAME(timer_delete) | 
 | 356 | 	ENTRY_COMP(clock_settime)	/* 255 */ | 
 | 357 | 	ENTRY_COMP(clock_gettime) | 
 | 358 | 	ENTRY_COMP(clock_getres) | 
 | 359 | 	ENTRY_COMP(clock_nanosleep) | 
 | 360 | 	ENTRY_SAME(tgkill) | 
 | 361 | 	ENTRY_COMP(mbind)		/* 260 */ | 
 | 362 | 	ENTRY_COMP(get_mempolicy) | 
 | 363 | 	ENTRY_COMP(set_mempolicy) | 
| Jens Axboe | ba1f188 | 2005-10-21 22:45:57 -0400 | [diff] [blame] | 364 | 	ENTRY_SAME(ni_syscall)	/* 263: reserved for vserver */ | 
 | 365 | 	ENTRY_SAME(add_key) | 
 | 366 | 	ENTRY_SAME(request_key)		/* 265 */ | 
 | 367 | 	ENTRY_SAME(keyctl) | 
 | 368 | 	ENTRY_SAME(ioprio_set) | 
 | 369 | 	ENTRY_SAME(ioprio_get) | 
| Kyle McMartin | 68ee3eb | 2006-01-29 20:25:49 -0700 | [diff] [blame] | 370 | 	ENTRY_SAME(inotify_init) | 
 | 371 | 	ENTRY_SAME(inotify_add_watch)	/* 270 */ | 
 | 372 | 	ENTRY_SAME(inotify_rm_watch) | 
| Kyle McMartin | 68ee3eb | 2006-01-29 20:25:49 -0700 | [diff] [blame] | 373 | 	ENTRY_SAME(migrate_pages) | 
| Kyle McMartin | 4650f0a | 2007-01-08 16:28:06 -0500 | [diff] [blame] | 374 | 	ENTRY_COMP(pselect6) | 
 | 375 | 	ENTRY_COMP(ppoll) | 
| Kyle McMartin | 68ee3eb | 2006-01-29 20:25:49 -0700 | [diff] [blame] | 376 | 	ENTRY_COMP(openat)		/* 275 */ | 
 | 377 | 	ENTRY_SAME(mkdirat) | 
 | 378 | 	ENTRY_SAME(mknodat) | 
 | 379 | 	ENTRY_SAME(fchownat) | 
 | 380 | 	ENTRY_COMP(futimesat) | 
| Kyle McMartin | 108dff7 | 2006-02-13 22:44:22 -0500 | [diff] [blame] | 381 | 	ENTRY_SAME(fstatat64)		/* 280 */ | 
| Kyle McMartin | 68ee3eb | 2006-01-29 20:25:49 -0700 | [diff] [blame] | 382 | 	ENTRY_SAME(unlinkat) | 
 | 383 | 	ENTRY_SAME(renameat) | 
 | 384 | 	ENTRY_SAME(linkat) | 
 | 385 | 	ENTRY_SAME(symlinkat) | 
 | 386 | 	ENTRY_SAME(readlinkat)		/* 285 */ | 
 | 387 | 	ENTRY_SAME(fchmodat) | 
 | 388 | 	ENTRY_SAME(faccessat) | 
| Kyle McMartin | 6ca773c | 2006-04-20 04:44:07 +0000 | [diff] [blame] | 389 | 	ENTRY_SAME(unshare) | 
 | 390 | 	ENTRY_COMP(set_robust_list) | 
 | 391 | 	ENTRY_COMP(get_robust_list)	/* 290 */ | 
 | 392 | 	ENTRY_SAME(splice) | 
 | 393 | 	ENTRY_OURS(sync_file_range) | 
 | 394 | 	ENTRY_SAME(tee) | 
| Helge Deller | 19dd705 | 2006-12-23 00:12:02 +0100 | [diff] [blame] | 395 | 	ENTRY_COMP(vmsplice) | 
 | 396 | 	ENTRY_COMP(move_pages)		/* 295 */ | 
 | 397 | 	ENTRY_SAME(getcpu) | 
 | 398 | 	ENTRY_SAME(epoll_pwait) | 
| Guy Martin | 2ed0e24 | 2007-02-21 15:32:57 +0000 | [diff] [blame] | 399 | 	ENTRY_COMP(statfs64) | 
 | 400 | 	ENTRY_COMP(fstatfs64) | 
| Kyle McMartin | fd3eef1 | 2007-03-17 11:17:31 -0400 | [diff] [blame] | 401 | 	ENTRY_COMP(kexec_load)		/* 300 */ | 
| Helge Deller | 593af52 | 2007-05-27 21:15:49 +0200 | [diff] [blame] | 402 | 	ENTRY_COMP(utimensat) | 
 | 403 | 	ENTRY_COMP(signalfd) | 
| Kyle McMartin | 0cb845e | 2008-02-18 13:57:26 -0800 | [diff] [blame] | 404 | 	ENTRY_SAME(ni_syscall)		/* was timerfd */ | 
| Helge Deller | 593af52 | 2007-05-27 21:15:49 +0200 | [diff] [blame] | 405 | 	ENTRY_SAME(eventfd) | 
| Kyle McMartin | 2cfc5be | 2007-09-28 13:25:59 -0400 | [diff] [blame] | 406 | 	ENTRY_COMP(fallocate)		/* 305 */ | 
| Kyle McMartin | ff80c66 | 2008-02-18 14:00:18 -0800 | [diff] [blame] | 407 | 	ENTRY_SAME(timerfd_create) | 
 | 408 | 	ENTRY_COMP(timerfd_settime) | 
 | 409 | 	ENTRY_COMP(timerfd_gettime) | 
| Kyle McMartin | 0be7d1f | 2008-08-09 14:38:18 -0400 | [diff] [blame] | 410 | 	ENTRY_COMP(signalfd4) | 
 | 411 | 	ENTRY_SAME(eventfd2)		/* 310 */ | 
 | 412 | 	ENTRY_SAME(epoll_create1) | 
 | 413 | 	ENTRY_SAME(dup3) | 
 | 414 | 	ENTRY_SAME(pipe2) | 
 | 415 | 	ENTRY_SAME(inotify_init1) | 
| Helge Deller | 593af52 | 2007-05-27 21:15:49 +0200 | [diff] [blame] | 416 |  | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 417 | 	/* Nothing yet */ | 
 | 418 |  | 
| Kyle McMartin | 034a15b | 2007-03-17 11:15:01 -0400 | [diff] [blame] | 419 | #undef ENTRY_SAME | 
 | 420 | #undef ENTRY_DIFF | 
 | 421 | #undef ENTRY_UHOH | 
 | 422 | #undef ENTRY_COMP | 
 | 423 | #undef ENTRY_OURS |