| 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 | 
| Lucas De Marchi | 25985ed | 2011-03-30 22:57:33 -0300 | [diff] [blame] | 37 | * the compatibility layer has a useful 32-bit implementation. | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 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) | 
| Christoph Hellwig | e28cbf2 | 2010-03-10 15:21:19 -0800 | [diff] [blame] | 130 | ENTRY_SAME(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 */ | 
| Eric W. Biederman | f78a9a5a | 2009-04-03 00:49:26 -0700 | [diff] [blame] | 237 | ENTRY_COMP(sysctl) | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 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... */ | 
| Stephen Rothwell | d4d7b2a | 2011-08-29 10:38:57 +1000 | [diff] [blame] | 262 | ENTRY_SAME(ni_syscall)		/* was nfsservctl */ | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 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) | 
| Kyle McMartin | 4435607 | 2009-06-23 11:40:37 -0400 | [diff] [blame] | 416 | ENTRY_COMP(preadv)		/* 315 */ | 
| Kyle McMartin | 90eab5e | 2009-04-27 08:29:12 -0400 | [diff] [blame] | 417 | ENTRY_COMP(pwritev) | 
| Kyle McMartin | 4435607 | 2009-06-23 11:40:37 -0400 | [diff] [blame] | 418 | ENTRY_COMP(rt_tgsigqueueinfo) | 
| Ingo Molnar | cdd6c48 | 2009-09-21 12:02:48 +0200 | [diff] [blame] | 419 | ENTRY_SAME(perf_event_open) | 
| Helge Deller | 9ceb38e | 2009-12-22 22:50:33 +0000 | [diff] [blame] | 420 | ENTRY_COMP(recvmmsg) | 
| Kyle McMartin | 81e4a5e | 2009-12-26 17:19:17 +0000 | [diff] [blame] | 421 | ENTRY_SAME(accept4)		/* 320 */ | 
| Kyle McMartin | caf9619 | 2010-10-13 20:35:56 -0400 | [diff] [blame] | 422 | ENTRY_SAME(prlimit64) | 
| James Bottomley | 1824074 | 2011-04-15 08:55:44 -0700 | [diff] [blame] | 423 | ENTRY_SAME(fanotify_init) | 
|  | 424 | ENTRY_COMP(fanotify_mark) | 
| James Bottomley | c3f957a | 2011-04-15 08:55:45 -0700 | [diff] [blame] | 425 | ENTRY_COMP(clock_adjtime) | 
| James Bottomley | a71aae4 | 2011-04-15 08:55:46 -0700 | [diff] [blame] | 426 | ENTRY_SAME(name_to_handle_at)	/* 325 */ | 
|  | 427 | ENTRY_COMP(open_by_handle_at) | 
| James Bottomley | 2e7bad5 | 2011-04-15 08:55:47 -0700 | [diff] [blame] | 428 | ENTRY_SAME(syncfs) | 
| Eric W. Biederman | 7b21fdd | 2011-05-27 19:28:27 -0700 | [diff] [blame] | 429 | ENTRY_SAME(setns) | 
| James Bottomley | 205e9a2 | 2011-07-29 18:37:02 +0400 | [diff] [blame] | 430 | ENTRY_COMP(sendmmsg) | 
| Helge Deller | 593af52 | 2007-05-27 21:15:49 +0200 | [diff] [blame] | 431 |  | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 432 | /* Nothing yet */ | 
|  | 433 |  | 
| Kyle McMartin | 034a15b | 2007-03-17 11:15:01 -0400 | [diff] [blame] | 434 | #undef ENTRY_SAME | 
|  | 435 | #undef ENTRY_DIFF | 
|  | 436 | #undef ENTRY_UHOH | 
|  | 437 | #undef ENTRY_COMP | 
|  | 438 | #undef ENTRY_OURS |