diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm64/include/asm/unistd.h | 1 | ||||
-rw-r--r-- | arch/mips/include/asm/unistd.h | 1 | ||||
-rw-r--r-- | arch/s390/include/asm/compat.h | 6 | ||||
-rw-r--r-- | arch/s390/kernel/compat_linux.c | 116 | ||||
-rw-r--r-- | arch/s390/kernel/compat_linux.h | 81 | ||||
-rw-r--r-- | arch/s390/kernel/compat_signal.c | 4 | ||||
-rw-r--r-- | arch/s390/kernel/compat_wrapper.S | 1425 | ||||
-rw-r--r-- | arch/s390/kernel/compat_wrapper.c | 215 | ||||
-rw-r--r-- | arch/s390/kernel/entry.h | 6 | ||||
-rw-r--r-- | arch/s390/kernel/syscalls.S | 504 | ||||
-rw-r--r-- | arch/x86/include/asm/unistd.h | 3 |
11 files changed, 582 insertions, 1780 deletions
diff --git a/arch/arm64/include/asm/unistd.h b/arch/arm64/include/asm/unistd.h index 82ce217e94cf..a4654c656a1e 100644 --- a/arch/arm64/include/asm/unistd.h +++ b/arch/arm64/include/asm/unistd.h | |||
@@ -14,6 +14,7 @@ | |||
14 | * along with this program. If not, see <http://www.gnu.org/licenses/>. | 14 | * along with this program. If not, see <http://www.gnu.org/licenses/>. |
15 | */ | 15 | */ |
16 | #ifdef CONFIG_COMPAT | 16 | #ifdef CONFIG_COMPAT |
17 | #define __ARCH_WANT_COMPAT_SYS_GETDENTS64 | ||
17 | #define __ARCH_WANT_COMPAT_STAT64 | 18 | #define __ARCH_WANT_COMPAT_STAT64 |
18 | #define __ARCH_WANT_SYS_GETHOSTNAME | 19 | #define __ARCH_WANT_SYS_GETHOSTNAME |
19 | #define __ARCH_WANT_SYS_PAUSE | 20 | #define __ARCH_WANT_SYS_PAUSE |
diff --git a/arch/mips/include/asm/unistd.h b/arch/mips/include/asm/unistd.h index 4d3b92886665..413d6c612bec 100644 --- a/arch/mips/include/asm/unistd.h +++ b/arch/mips/include/asm/unistd.h | |||
@@ -24,7 +24,6 @@ | |||
24 | 24 | ||
25 | #ifndef __ASSEMBLY__ | 25 | #ifndef __ASSEMBLY__ |
26 | 26 | ||
27 | #define __ARCH_OMIT_COMPAT_SYS_GETDENTS64 | ||
28 | #define __ARCH_WANT_OLD_READDIR | 27 | #define __ARCH_WANT_OLD_READDIR |
29 | #define __ARCH_WANT_SYS_ALARM | 28 | #define __ARCH_WANT_SYS_ALARM |
30 | #define __ARCH_WANT_SYS_GETHOSTNAME | 29 | #define __ARCH_WANT_SYS_GETHOSTNAME |
diff --git a/arch/s390/include/asm/compat.h b/arch/s390/include/asm/compat.h index 5d7e8cf83bd6..d350ed9d0fbb 100644 --- a/arch/s390/include/asm/compat.h +++ b/arch/s390/include/asm/compat.h | |||
@@ -8,7 +8,11 @@ | |||
8 | #include <linux/thread_info.h> | 8 | #include <linux/thread_info.h> |
9 | 9 | ||
10 | #define __TYPE_IS_PTR(t) (!__builtin_types_compatible_p(typeof(0?(t)0:0ULL), u64)) | 10 | #define __TYPE_IS_PTR(t) (!__builtin_types_compatible_p(typeof(0?(t)0:0ULL), u64)) |
11 | #define __SC_DELOUSE(t,v) (t)(__TYPE_IS_PTR(t) ? ((v) & 0x7fffffff) : (v)) | 11 | |
12 | #define __SC_DELOUSE(t,v) ({ \ | ||
13 | BUILD_BUG_ON(sizeof(t) > 4 && !__TYPE_IS_PTR(t)); \ | ||
14 | (t)(__TYPE_IS_PTR(t) ? ((v) & 0x7fffffff) : (v)); \ | ||
15 | }) | ||
12 | 16 | ||
13 | #define PSW32_MASK_PER 0x40000000UL | 17 | #define PSW32_MASK_PER 0x40000000UL |
14 | #define PSW32_MASK_DAT 0x04000000UL | 18 | #define PSW32_MASK_DAT 0x04000000UL |
diff --git a/arch/s390/kernel/compat_linux.c b/arch/s390/kernel/compat_linux.c index db02052bd137..ca38139423ae 100644 --- a/arch/s390/kernel/compat_linux.c +++ b/arch/s390/kernel/compat_linux.c | |||
@@ -86,48 +86,51 @@ | |||
86 | #define SET_STAT_UID(stat, uid) (stat).st_uid = high2lowuid(uid) | 86 | #define SET_STAT_UID(stat, uid) (stat).st_uid = high2lowuid(uid) |
87 | #define SET_STAT_GID(stat, gid) (stat).st_gid = high2lowgid(gid) | 87 | #define SET_STAT_GID(stat, gid) (stat).st_gid = high2lowgid(gid) |
88 | 88 | ||
89 | asmlinkage long sys32_chown16(const char __user * filename, u16 user, u16 group) | 89 | COMPAT_SYSCALL_DEFINE3(s390_chown16, const char __user *, filename, |
90 | u16, user, u16, group) | ||
90 | { | 91 | { |
91 | return sys_chown(filename, low2highuid(user), low2highgid(group)); | 92 | return sys_chown(filename, low2highuid(user), low2highgid(group)); |
92 | } | 93 | } |
93 | 94 | ||
94 | asmlinkage long sys32_lchown16(const char __user * filename, u16 user, u16 group) | 95 | COMPAT_SYSCALL_DEFINE3(s390_lchown16, const char __user *, |
96 | filename, u16, user, u16, group) | ||
95 | { | 97 | { |
96 | return sys_lchown(filename, low2highuid(user), low2highgid(group)); | 98 | return sys_lchown(filename, low2highuid(user), low2highgid(group)); |
97 | } | 99 | } |
98 | 100 | ||
99 | asmlinkage long sys32_fchown16(unsigned int fd, u16 user, u16 group) | 101 | COMPAT_SYSCALL_DEFINE3(s390_fchown16, unsigned int, fd, u16, user, u16, group) |
100 | { | 102 | { |
101 | return sys_fchown(fd, low2highuid(user), low2highgid(group)); | 103 | return sys_fchown(fd, low2highuid(user), low2highgid(group)); |
102 | } | 104 | } |
103 | 105 | ||
104 | asmlinkage long sys32_setregid16(u16 rgid, u16 egid) | 106 | COMPAT_SYSCALL_DEFINE2(s390_setregid16, u16, rgid, u16, egid) |
105 | { | 107 | { |
106 | return sys_setregid(low2highgid(rgid), low2highgid(egid)); | 108 | return sys_setregid(low2highgid(rgid), low2highgid(egid)); |
107 | } | 109 | } |
108 | 110 | ||
109 | asmlinkage long sys32_setgid16(u16 gid) | 111 | COMPAT_SYSCALL_DEFINE1(s390_setgid16, u16, gid) |
110 | { | 112 | { |
111 | return sys_setgid((gid_t)gid); | 113 | return sys_setgid((gid_t)gid); |
112 | } | 114 | } |
113 | 115 | ||
114 | asmlinkage long sys32_setreuid16(u16 ruid, u16 euid) | 116 | COMPAT_SYSCALL_DEFINE2(s390_setreuid16, u16, ruid, u16, euid) |
115 | { | 117 | { |
116 | return sys_setreuid(low2highuid(ruid), low2highuid(euid)); | 118 | return sys_setreuid(low2highuid(ruid), low2highuid(euid)); |
117 | } | 119 | } |
118 | 120 | ||
119 | asmlinkage long sys32_setuid16(u16 uid) | 121 | COMPAT_SYSCALL_DEFINE1(s390_setuid16, u16, uid) |
120 | { | 122 | { |
121 | return sys_setuid((uid_t)uid); | 123 | return sys_setuid((uid_t)uid); |
122 | } | 124 | } |
123 | 125 | ||
124 | asmlinkage long sys32_setresuid16(u16 ruid, u16 euid, u16 suid) | 126 | COMPAT_SYSCALL_DEFINE3(s390_setresuid16, u16, ruid, u16, euid, u16, suid) |
125 | { | 127 | { |
126 | return sys_setresuid(low2highuid(ruid), low2highuid(euid), | 128 | return sys_setresuid(low2highuid(ruid), low2highuid(euid), |
127 | low2highuid(suid)); | 129 | low2highuid(suid)); |
128 | } | 130 | } |
129 | 131 | ||
130 | asmlinkage long sys32_getresuid16(u16 __user *ruidp, u16 __user *euidp, u16 __user *suidp) | 132 | COMPAT_SYSCALL_DEFINE3(s390_getresuid16, u16 __user *, ruidp, |
133 | u16 __user *, euidp, u16 __user *, suidp) | ||
131 | { | 134 | { |
132 | const struct cred *cred = current_cred(); | 135 | const struct cred *cred = current_cred(); |
133 | int retval; | 136 | int retval; |
@@ -144,13 +147,14 @@ asmlinkage long sys32_getresuid16(u16 __user *ruidp, u16 __user *euidp, u16 __us | |||
144 | return retval; | 147 | return retval; |
145 | } | 148 | } |
146 | 149 | ||
147 | asmlinkage long sys32_setresgid16(u16 rgid, u16 egid, u16 sgid) | 150 | COMPAT_SYSCALL_DEFINE3(s390_setresgid16, u16, rgid, u16, egid, u16, sgid) |
148 | { | 151 | { |
149 | return sys_setresgid(low2highgid(rgid), low2highgid(egid), | 152 | return sys_setresgid(low2highgid(rgid), low2highgid(egid), |
150 | low2highgid(sgid)); | 153 | low2highgid(sgid)); |
151 | } | 154 | } |
152 | 155 | ||
153 | asmlinkage long sys32_getresgid16(u16 __user *rgidp, u16 __user *egidp, u16 __user *sgidp) | 156 | COMPAT_SYSCALL_DEFINE3(s390_getresgid16, u16 __user *, rgidp, |
157 | u16 __user *, egidp, u16 __user *, sgidp) | ||
154 | { | 158 | { |
155 | const struct cred *cred = current_cred(); | 159 | const struct cred *cred = current_cred(); |
156 | int retval; | 160 | int retval; |
@@ -167,12 +171,12 @@ asmlinkage long sys32_getresgid16(u16 __user *rgidp, u16 __user *egidp, u16 __us | |||
167 | return retval; | 171 | return retval; |
168 | } | 172 | } |
169 | 173 | ||
170 | asmlinkage long sys32_setfsuid16(u16 uid) | 174 | COMPAT_SYSCALL_DEFINE1(s390_setfsuid16, u16, uid) |
171 | { | 175 | { |
172 | return sys_setfsuid((uid_t)uid); | 176 | return sys_setfsuid((uid_t)uid); |
173 | } | 177 | } |
174 | 178 | ||
175 | asmlinkage long sys32_setfsgid16(u16 gid) | 179 | COMPAT_SYSCALL_DEFINE1(s390_setfsgid16, u16, gid) |
176 | { | 180 | { |
177 | return sys_setfsgid((gid_t)gid); | 181 | return sys_setfsgid((gid_t)gid); |
178 | } | 182 | } |
@@ -215,7 +219,7 @@ static int groups16_from_user(struct group_info *group_info, u16 __user *groupli | |||
215 | return 0; | 219 | return 0; |
216 | } | 220 | } |
217 | 221 | ||
218 | asmlinkage long sys32_getgroups16(int gidsetsize, u16 __user *grouplist) | 222 | COMPAT_SYSCALL_DEFINE2(s390_getgroups16, int, gidsetsize, u16 __user *, grouplist) |
219 | { | 223 | { |
220 | const struct cred *cred = current_cred(); | 224 | const struct cred *cred = current_cred(); |
221 | int i; | 225 | int i; |
@@ -240,7 +244,7 @@ out: | |||
240 | return i; | 244 | return i; |
241 | } | 245 | } |
242 | 246 | ||
243 | asmlinkage long sys32_setgroups16(int gidsetsize, u16 __user *grouplist) | 247 | COMPAT_SYSCALL_DEFINE2(s390_setgroups16, int, gidsetsize, u16 __user *, grouplist) |
244 | { | 248 | { |
245 | struct group_info *group_info; | 249 | struct group_info *group_info; |
246 | int retval; | 250 | int retval; |
@@ -265,22 +269,22 @@ asmlinkage long sys32_setgroups16(int gidsetsize, u16 __user *grouplist) | |||
265 | return retval; | 269 | return retval; |
266 | } | 270 | } |
267 | 271 | ||
268 | asmlinkage long sys32_getuid16(void) | 272 | COMPAT_SYSCALL_DEFINE0(s390_getuid16) |
269 | { | 273 | { |
270 | return high2lowuid(from_kuid_munged(current_user_ns(), current_uid())); | 274 | return high2lowuid(from_kuid_munged(current_user_ns(), current_uid())); |
271 | } | 275 | } |
272 | 276 | ||
273 | asmlinkage long sys32_geteuid16(void) | 277 | COMPAT_SYSCALL_DEFINE0(s390_geteuid16) |
274 | { | 278 | { |
275 | return high2lowuid(from_kuid_munged(current_user_ns(), current_euid())); | 279 | return high2lowuid(from_kuid_munged(current_user_ns(), current_euid())); |
276 | } | 280 | } |
277 | 281 | ||
278 | asmlinkage long sys32_getgid16(void) | 282 | COMPAT_SYSCALL_DEFINE0(s390_getgid16) |
279 | { | 283 | { |
280 | return high2lowgid(from_kgid_munged(current_user_ns(), current_gid())); | 284 | return high2lowgid(from_kgid_munged(current_user_ns(), current_gid())); |
281 | } | 285 | } |
282 | 286 | ||
283 | asmlinkage long sys32_getegid16(void) | 287 | COMPAT_SYSCALL_DEFINE0(s390_getegid16) |
284 | { | 288 | { |
285 | return high2lowgid(from_kgid_munged(current_user_ns(), current_egid())); | 289 | return high2lowgid(from_kgid_munged(current_user_ns(), current_egid())); |
286 | } | 290 | } |
@@ -295,41 +299,35 @@ COMPAT_SYSCALL_DEFINE5(s390_ipc, uint, call, int, first, compat_ulong_t, second, | |||
295 | } | 299 | } |
296 | #endif | 300 | #endif |
297 | 301 | ||
298 | asmlinkage long sys32_truncate64(const char __user * path, unsigned long high, unsigned long low) | 302 | COMPAT_SYSCALL_DEFINE3(s390_truncate64, const char __user *, path, u32, high, u32, low) |
299 | { | 303 | { |
300 | if ((int)high < 0) | 304 | return sys_truncate(path, (unsigned long)high << 32 | low); |
301 | return -EINVAL; | ||
302 | else | ||
303 | return sys_truncate(path, (high << 32) | low); | ||
304 | } | 305 | } |
305 | 306 | ||
306 | asmlinkage long sys32_ftruncate64(unsigned int fd, unsigned long high, unsigned long low) | 307 | COMPAT_SYSCALL_DEFINE3(s390_ftruncate64, unsigned int, fd, u32, high, u32, low) |
307 | { | 308 | { |
308 | if ((int)high < 0) | 309 | return sys_ftruncate(fd, (unsigned long)high << 32 | low); |
309 | return -EINVAL; | ||
310 | else | ||
311 | return sys_ftruncate(fd, (high << 32) | low); | ||
312 | } | 310 | } |
313 | 311 | ||
314 | asmlinkage long sys32_pread64(unsigned int fd, char __user *ubuf, | 312 | COMPAT_SYSCALL_DEFINE5(s390_pread64, unsigned int, fd, char __user *, ubuf, |
315 | size_t count, u32 poshi, u32 poslo) | 313 | compat_size_t, count, u32, high, u32, low) |
316 | { | 314 | { |
317 | if ((compat_ssize_t) count < 0) | 315 | if ((compat_ssize_t) count < 0) |
318 | return -EINVAL; | 316 | return -EINVAL; |
319 | return sys_pread64(fd, ubuf, count, ((loff_t)AA(poshi) << 32) | AA(poslo)); | 317 | return sys_pread64(fd, ubuf, count, (unsigned long)high << 32 | low); |
320 | } | 318 | } |
321 | 319 | ||
322 | asmlinkage long sys32_pwrite64(unsigned int fd, const char __user *ubuf, | 320 | COMPAT_SYSCALL_DEFINE5(s390_pwrite64, unsigned int, fd, const char __user *, ubuf, |
323 | size_t count, u32 poshi, u32 poslo) | 321 | compat_size_t, count, u32, high, u32, low) |
324 | { | 322 | { |
325 | if ((compat_ssize_t) count < 0) | 323 | if ((compat_ssize_t) count < 0) |
326 | return -EINVAL; | 324 | return -EINVAL; |
327 | return sys_pwrite64(fd, ubuf, count, ((loff_t)AA(poshi) << 32) | AA(poslo)); | 325 | return sys_pwrite64(fd, ubuf, count, (unsigned long)high << 32 | low); |
328 | } | 326 | } |
329 | 327 | ||
330 | asmlinkage compat_ssize_t sys32_readahead(int fd, u32 offhi, u32 offlo, s32 count) | 328 | COMPAT_SYSCALL_DEFINE4(s390_readahead, int, fd, u32, high, u32, low, s32, count) |
331 | { | 329 | { |
332 | return sys_readahead(fd, ((loff_t)AA(offhi) << 32) | AA(offlo), count); | 330 | return sys_readahead(fd, (unsigned long)high << 32 | low, count); |
333 | } | 331 | } |
334 | 332 | ||
335 | struct stat64_emu31 { | 333 | struct stat64_emu31 { |
@@ -381,7 +379,7 @@ static int cp_stat64(struct stat64_emu31 __user *ubuf, struct kstat *stat) | |||
381 | return copy_to_user(ubuf,&tmp,sizeof(tmp)) ? -EFAULT : 0; | 379 | return copy_to_user(ubuf,&tmp,sizeof(tmp)) ? -EFAULT : 0; |
382 | } | 380 | } |
383 | 381 | ||
384 | asmlinkage long sys32_stat64(const char __user * filename, struct stat64_emu31 __user * statbuf) | 382 | COMPAT_SYSCALL_DEFINE2(s390_stat64, const char __user *, filename, struct stat64_emu31 __user *, statbuf) |
385 | { | 383 | { |
386 | struct kstat stat; | 384 | struct kstat stat; |
387 | int ret = vfs_stat(filename, &stat); | 385 | int ret = vfs_stat(filename, &stat); |
@@ -390,7 +388,7 @@ asmlinkage long sys32_stat64(const char __user * filename, struct stat64_emu31 _ | |||
390 | return ret; | 388 | return ret; |
391 | } | 389 | } |
392 | 390 | ||
393 | asmlinkage long sys32_lstat64(const char __user * filename, struct stat64_emu31 __user * statbuf) | 391 | COMPAT_SYSCALL_DEFINE2(s390_lstat64, const char __user *, filename, struct stat64_emu31 __user *, statbuf) |
394 | { | 392 | { |
395 | struct kstat stat; | 393 | struct kstat stat; |
396 | int ret = vfs_lstat(filename, &stat); | 394 | int ret = vfs_lstat(filename, &stat); |
@@ -399,7 +397,7 @@ asmlinkage long sys32_lstat64(const char __user * filename, struct stat64_emu31 | |||
399 | return ret; | 397 | return ret; |
400 | } | 398 | } |
401 | 399 | ||
402 | asmlinkage long sys32_fstat64(unsigned long fd, struct stat64_emu31 __user * statbuf) | 400 | COMPAT_SYSCALL_DEFINE2(s390_fstat64, unsigned int, fd, struct stat64_emu31 __user *, statbuf) |
403 | { | 401 | { |
404 | struct kstat stat; | 402 | struct kstat stat; |
405 | int ret = vfs_fstat(fd, &stat); | 403 | int ret = vfs_fstat(fd, &stat); |
@@ -408,8 +406,8 @@ asmlinkage long sys32_fstat64(unsigned long fd, struct stat64_emu31 __user * sta | |||
408 | return ret; | 406 | return ret; |
409 | } | 407 | } |
410 | 408 | ||
411 | asmlinkage long sys32_fstatat64(unsigned int dfd, const char __user *filename, | 409 | COMPAT_SYSCALL_DEFINE4(s390_fstatat64, unsigned int, dfd, const char __user *, filename, |
412 | struct stat64_emu31 __user* statbuf, int flag) | 410 | struct stat64_emu31 __user *, statbuf, int, flag) |
413 | { | 411 | { |
414 | struct kstat stat; | 412 | struct kstat stat; |
415 | int error; | 413 | int error; |
@@ -435,7 +433,7 @@ struct mmap_arg_struct_emu31 { | |||
435 | compat_ulong_t offset; | 433 | compat_ulong_t offset; |
436 | }; | 434 | }; |
437 | 435 | ||
438 | asmlinkage unsigned long old32_mmap(struct mmap_arg_struct_emu31 __user *arg) | 436 | COMPAT_SYSCALL_DEFINE1(s390_old_mmap, struct mmap_arg_struct_emu31 __user *, arg) |
439 | { | 437 | { |
440 | struct mmap_arg_struct_emu31 a; | 438 | struct mmap_arg_struct_emu31 a; |
441 | 439 | ||
@@ -447,7 +445,7 @@ asmlinkage unsigned long old32_mmap(struct mmap_arg_struct_emu31 __user *arg) | |||
447 | a.offset >> PAGE_SHIFT); | 445 | a.offset >> PAGE_SHIFT); |
448 | } | 446 | } |
449 | 447 | ||
450 | asmlinkage long sys32_mmap2(struct mmap_arg_struct_emu31 __user *arg) | 448 | COMPAT_SYSCALL_DEFINE1(s390_mmap2, struct mmap_arg_struct_emu31 __user *, arg) |
451 | { | 449 | { |
452 | struct mmap_arg_struct_emu31 a; | 450 | struct mmap_arg_struct_emu31 a; |
453 | 451 | ||
@@ -456,7 +454,7 @@ asmlinkage long sys32_mmap2(struct mmap_arg_struct_emu31 __user *arg) | |||
456 | return sys_mmap_pgoff(a.addr, a.len, a.prot, a.flags, a.fd, a.offset); | 454 | return sys_mmap_pgoff(a.addr, a.len, a.prot, a.flags, a.fd, a.offset); |
457 | } | 455 | } |
458 | 456 | ||
459 | asmlinkage long sys32_read(unsigned int fd, char __user * buf, size_t count) | 457 | COMPAT_SYSCALL_DEFINE3(s390_read, unsigned int, fd, char __user *, buf, compat_size_t, count) |
460 | { | 458 | { |
461 | if ((compat_ssize_t) count < 0) | 459 | if ((compat_ssize_t) count < 0) |
462 | return -EINVAL; | 460 | return -EINVAL; |
@@ -464,7 +462,7 @@ asmlinkage long sys32_read(unsigned int fd, char __user * buf, size_t count) | |||
464 | return sys_read(fd, buf, count); | 462 | return sys_read(fd, buf, count); |
465 | } | 463 | } |
466 | 464 | ||
467 | asmlinkage long sys32_write(unsigned int fd, const char __user * buf, size_t count) | 465 | COMPAT_SYSCALL_DEFINE3(s390_write, unsigned int, fd, const char __user *, buf, compat_size_t, count) |
468 | { | 466 | { |
469 | if ((compat_ssize_t) count < 0) | 467 | if ((compat_ssize_t) count < 0) |
470 | return -EINVAL; | 468 | return -EINVAL; |
@@ -478,14 +476,13 @@ asmlinkage long sys32_write(unsigned int fd, const char __user * buf, size_t cou | |||
478 | * because the 31 bit values differ from the 64 bit values. | 476 | * because the 31 bit values differ from the 64 bit values. |
479 | */ | 477 | */ |
480 | 478 | ||
481 | asmlinkage long | 479 | COMPAT_SYSCALL_DEFINE5(s390_fadvise64, int, fd, u32, high, u32, low, compat_size_t, len, int, advise) |
482 | sys32_fadvise64(int fd, loff_t offset, size_t len, int advise) | ||
483 | { | 480 | { |
484 | if (advise == 4) | 481 | if (advise == 4) |
485 | advise = POSIX_FADV_DONTNEED; | 482 | advise = POSIX_FADV_DONTNEED; |
486 | else if (advise == 5) | 483 | else if (advise == 5) |
487 | advise = POSIX_FADV_NOREUSE; | 484 | advise = POSIX_FADV_NOREUSE; |
488 | return sys_fadvise64(fd, offset, len, advise); | 485 | return sys_fadvise64(fd, (unsigned long)high << 32 | low, len, advise); |
489 | } | 486 | } |
490 | 487 | ||
491 | struct fadvise64_64_args { | 488 | struct fadvise64_64_args { |
@@ -495,8 +492,7 @@ struct fadvise64_64_args { | |||
495 | int advice; | 492 | int advice; |
496 | }; | 493 | }; |
497 | 494 | ||
498 | asmlinkage long | 495 | COMPAT_SYSCALL_DEFINE1(s390_fadvise64_64, struct fadvise64_64_args __user *, args) |
499 | sys32_fadvise64_64(struct fadvise64_64_args __user *args) | ||
500 | { | 496 | { |
501 | struct fadvise64_64_args a; | 497 | struct fadvise64_64_args a; |
502 | 498 | ||
@@ -508,3 +504,17 @@ sys32_fadvise64_64(struct fadvise64_64_args __user *args) | |||
508 | a.advice = POSIX_FADV_NOREUSE; | 504 | a.advice = POSIX_FADV_NOREUSE; |
509 | return sys_fadvise64_64(a.fd, a.offset, a.len, a.advice); | 505 | return sys_fadvise64_64(a.fd, a.offset, a.len, a.advice); |
510 | } | 506 | } |
507 | |||
508 | COMPAT_SYSCALL_DEFINE6(s390_sync_file_range, int, fd, u32, offhigh, u32, offlow, | ||
509 | u32, nhigh, u32, nlow, unsigned int, flags) | ||
510 | { | ||
511 | return sys_sync_file_range(fd, ((loff_t)offhigh << 32) + offlow, | ||
512 | ((u64)nhigh << 32) + nlow, flags); | ||
513 | } | ||
514 | |||
515 | COMPAT_SYSCALL_DEFINE6(s390_fallocate, int, fd, int, mode, u32, offhigh, u32, offlow, | ||
516 | u32, lenhigh, u32, lenlow) | ||
517 | { | ||
518 | return sys_fallocate(fd, mode, ((loff_t)offhigh << 32) + offlow, | ||
519 | ((u64)lenhigh << 32) + lenlow); | ||
520 | } | ||
diff --git a/arch/s390/kernel/compat_linux.h b/arch/s390/kernel/compat_linux.h index 1bfda3eca379..39ddfdb40ae8 100644 --- a/arch/s390/kernel/compat_linux.h +++ b/arch/s390/kernel/compat_linux.h | |||
@@ -76,46 +76,43 @@ struct stat64_emu31; | |||
76 | struct mmap_arg_struct_emu31; | 76 | struct mmap_arg_struct_emu31; |
77 | struct fadvise64_64_args; | 77 | struct fadvise64_64_args; |
78 | 78 | ||
79 | long sys32_chown16(const char __user * filename, u16 user, u16 group); | 79 | long compat_sys_s390_chown16(const char __user *filename, u16 user, u16 group); |
80 | long sys32_lchown16(const char __user * filename, u16 user, u16 group); | 80 | long compat_sys_s390_lchown16(const char __user *filename, u16 user, u16 group); |
81 | long sys32_fchown16(unsigned int fd, u16 user, u16 group); | 81 | long compat_sys_s390_fchown16(unsigned int fd, u16 user, u16 group); |
82 | long sys32_setregid16(u16 rgid, u16 egid); | 82 | long compat_sys_s390_setregid16(u16 rgid, u16 egid); |
83 | long sys32_setgid16(u16 gid); | 83 | long compat_sys_s390_setgid16(u16 gid); |
84 | long sys32_setreuid16(u16 ruid, u16 euid); | 84 | long compat_sys_s390_setreuid16(u16 ruid, u16 euid); |
85 | long sys32_setuid16(u16 uid); | 85 | long compat_sys_s390_setuid16(u16 uid); |
86 | long sys32_setresuid16(u16 ruid, u16 euid, u16 suid); | 86 | long compat_sys_s390_setresuid16(u16 ruid, u16 euid, u16 suid); |
87 | long sys32_getresuid16(u16 __user *ruid, u16 __user *euid, u16 __user *suid); | 87 | long compat_sys_s390_getresuid16(u16 __user *ruid, u16 __user *euid, u16 __user *suid); |
88 | long sys32_setresgid16(u16 rgid, u16 egid, u16 sgid); | 88 | long compat_sys_s390_setresgid16(u16 rgid, u16 egid, u16 sgid); |
89 | long sys32_getresgid16(u16 __user *rgid, u16 __user *egid, u16 __user *sgid); | 89 | long compat_sys_s390_getresgid16(u16 __user *rgid, u16 __user *egid, u16 __user *sgid); |
90 | long sys32_setfsuid16(u16 uid); | 90 | long compat_sys_s390_setfsuid16(u16 uid); |
91 | long sys32_setfsgid16(u16 gid); | 91 | long compat_sys_s390_setfsgid16(u16 gid); |
92 | long sys32_getgroups16(int gidsetsize, u16 __user *grouplist); | 92 | long compat_sys_s390_getgroups16(int gidsetsize, u16 __user *grouplist); |
93 | long sys32_setgroups16(int gidsetsize, u16 __user *grouplist); | 93 | long compat_sys_s390_setgroups16(int gidsetsize, u16 __user *grouplist); |
94 | long sys32_getuid16(void); | 94 | long compat_sys_s390_getuid16(void); |
95 | long sys32_geteuid16(void); | 95 | long compat_sys_s390_geteuid16(void); |
96 | long sys32_getgid16(void); | 96 | long compat_sys_s390_getgid16(void); |
97 | long sys32_getegid16(void); | 97 | long compat_sys_s390_getegid16(void); |
98 | long sys32_truncate64(const char __user * path, unsigned long high, | 98 | long compat_sys_s390_truncate64(const char __user *path, u32 high, u32 low); |
99 | unsigned long low); | 99 | long compat_sys_s390_ftruncate64(unsigned int fd, u32 high, u32 low); |
100 | long sys32_ftruncate64(unsigned int fd, unsigned long high, unsigned long low); | 100 | long compat_sys_s390_pread64(unsigned int fd, char __user *ubuf, compat_size_t count, u32 high, u32 low); |
101 | long sys32_init_module(void __user *umod, unsigned long len, | 101 | long compat_sys_s390_pwrite64(unsigned int fd, const char __user *ubuf, compat_size_t count, u32 high, u32 low); |
102 | const char __user *uargs); | 102 | long compat_sys_s390_readahead(int fd, u32 high, u32 low, s32 count); |
103 | long sys32_delete_module(const char __user *name_user, unsigned int flags); | 103 | long compat_sys_s390_stat64(const char __user *filename, struct stat64_emu31 __user *statbuf); |
104 | long sys32_pread64(unsigned int fd, char __user *ubuf, size_t count, | 104 | long compat_sys_s390_lstat64(const char __user *filename, struct stat64_emu31 __user *statbuf); |
105 | u32 poshi, u32 poslo); | 105 | long compat_sys_s390_fstat64(unsigned int fd, struct stat64_emu31 __user *statbuf); |
106 | long sys32_pwrite64(unsigned int fd, const char __user *ubuf, | 106 | long compat_sys_s390_fstatat64(unsigned int dfd, const char __user *filename, struct stat64_emu31 __user *statbuf, int flag); |
107 | size_t count, u32 poshi, u32 poslo); | 107 | long compat_sys_s390_old_mmap(struct mmap_arg_struct_emu31 __user *arg); |
108 | compat_ssize_t sys32_readahead(int fd, u32 offhi, u32 offlo, s32 count); | 108 | long compat_sys_s390_mmap2(struct mmap_arg_struct_emu31 __user *arg); |
109 | long sys32_stat64(const char __user * filename, struct stat64_emu31 __user * statbuf); | 109 | long compat_sys_s390_read(unsigned int fd, char __user * buf, compat_size_t count); |
110 | long sys32_lstat64(const char __user * filename, | 110 | long compat_sys_s390_write(unsigned int fd, const char __user * buf, compat_size_t count); |
111 | struct stat64_emu31 __user * statbuf); | 111 | long compat_sys_s390_fadvise64(int fd, u32 high, u32 low, compat_size_t len, int advise); |
112 | long sys32_fstat64(unsigned long fd, struct stat64_emu31 __user * statbuf); | 112 | long compat_sys_s390_fadvise64_64(struct fadvise64_64_args __user *args); |
113 | long sys32_fstatat64(unsigned int dfd, const char __user *filename, | 113 | long compat_sys_s390_sync_file_range(int fd, u32 offhigh, u32 offlow, u32 nhigh, u32 nlow, unsigned int flags); |
114 | struct stat64_emu31 __user* statbuf, int flag); | 114 | long compat_sys_s390_fallocate(int fd, int mode, u32 offhigh, u32 offlow, u32 lenhigh, u32 lenlow); |
115 | unsigned long old32_mmap(struct mmap_arg_struct_emu31 __user *arg); | 115 | long compat_sys_sigreturn(void); |
116 | long sys32_mmap2(struct mmap_arg_struct_emu31 __user *arg); | 116 | long compat_sys_rt_sigreturn(void); |
117 | long sys32_read(unsigned int fd, char __user * buf, size_t count); | 117 | |
118 | long sys32_write(unsigned int fd, const char __user * buf, size_t count); | ||
119 | long sys32_fadvise64(int fd, loff_t offset, size_t len, int advise); | ||
120 | long sys32_fadvise64_64(struct fadvise64_64_args __user *args); | ||
121 | #endif /* _ASM_S390X_S390_H */ | 118 | #endif /* _ASM_S390X_S390_H */ |
diff --git a/arch/s390/kernel/compat_signal.c b/arch/s390/kernel/compat_signal.c index 8b84bc373e94..7df5ed9f44d7 100644 --- a/arch/s390/kernel/compat_signal.c +++ b/arch/s390/kernel/compat_signal.c | |||
@@ -241,7 +241,7 @@ static int restore_sigregs_gprs_high(struct pt_regs *regs, __u32 __user *uregs) | |||
241 | return 0; | 241 | return 0; |
242 | } | 242 | } |
243 | 243 | ||
244 | asmlinkage long sys32_sigreturn(void) | 244 | COMPAT_SYSCALL_DEFINE0(sigreturn) |
245 | { | 245 | { |
246 | struct pt_regs *regs = task_pt_regs(current); | 246 | struct pt_regs *regs = task_pt_regs(current); |
247 | sigframe32 __user *frame = (sigframe32 __user *)regs->gprs[15]; | 247 | sigframe32 __user *frame = (sigframe32 __user *)regs->gprs[15]; |
@@ -260,7 +260,7 @@ badframe: | |||
260 | return 0; | 260 | return 0; |
261 | } | 261 | } |
262 | 262 | ||
263 | asmlinkage long sys32_rt_sigreturn(void) | 263 | COMPAT_SYSCALL_DEFINE0(rt_sigreturn) |
264 | { | 264 | { |
265 | struct pt_regs *regs = task_pt_regs(current); | 265 | struct pt_regs *regs = task_pt_regs(current); |
266 | rt_sigframe32 __user *frame = (rt_sigframe32 __user *)regs->gprs[15]; | 266 | rt_sigframe32 __user *frame = (rt_sigframe32 __user *)regs->gprs[15]; |
diff --git a/arch/s390/kernel/compat_wrapper.S b/arch/s390/kernel/compat_wrapper.S deleted file mode 100644 index 0248949a756d..000000000000 --- a/arch/s390/kernel/compat_wrapper.S +++ /dev/null | |||
@@ -1,1425 +0,0 @@ | |||
1 | /* | ||
2 | * wrapper for 31 bit compatible system calls. | ||
3 | * | ||
4 | * Copyright IBM Corp. 2000, 2006 | ||
5 | * Author(s): Gerhard Tonn (ton@de.ibm.com), | ||
6 | * Thomas Spatzier (tspat@de.ibm.com) | ||
7 | */ | ||
8 | |||
9 | #include <linux/linkage.h> | ||
10 | |||
11 | ENTRY(sys32_exit_wrapper) | ||
12 | lgfr %r2,%r2 # int | ||
13 | jg sys_exit # branch to sys_exit | ||
14 | |||
15 | ENTRY(sys32_read_wrapper) | ||
16 | llgfr %r2,%r2 # unsigned int | ||
17 | llgtr %r3,%r3 # char * | ||
18 | llgfr %r4,%r4 # size_t | ||
19 | jg sys32_read # branch to sys_read | ||
20 | |||
21 | ENTRY(sys32_write_wrapper) | ||
22 | llgfr %r2,%r2 # unsigned int | ||
23 | llgtr %r3,%r3 # const char * | ||
24 | llgfr %r4,%r4 # size_t | ||
25 | jg sys32_write # branch to system call | ||
26 | |||
27 | ENTRY(sys32_close_wrapper) | ||
28 | llgfr %r2,%r2 # unsigned int | ||
29 | jg sys_close # branch to system call | ||
30 | |||
31 | ENTRY(sys32_creat_wrapper) | ||
32 | llgtr %r2,%r2 # const char * | ||
33 | lgfr %r3,%r3 # int | ||
34 | jg sys_creat # branch to system call | ||
35 | |||
36 | ENTRY(sys32_link_wrapper) | ||
37 | llgtr %r2,%r2 # const char * | ||
38 | llgtr %r3,%r3 # const char * | ||
39 | jg sys_link # branch to system call | ||
40 | |||
41 | ENTRY(sys32_unlink_wrapper) | ||
42 | llgtr %r2,%r2 # const char * | ||
43 | jg sys_unlink # branch to system call | ||
44 | |||
45 | ENTRY(sys32_chdir_wrapper) | ||
46 | llgtr %r2,%r2 # const char * | ||
47 | jg sys_chdir # branch to system call | ||
48 | |||
49 | ENTRY(sys32_time_wrapper) | ||
50 | llgtr %r2,%r2 # int * | ||
51 | jg compat_sys_time # branch to system call | ||
52 | |||
53 | ENTRY(sys32_mknod_wrapper) | ||
54 | llgtr %r2,%r2 # const char * | ||
55 | lgfr %r3,%r3 # int | ||
56 | llgfr %r4,%r4 # dev | ||
57 | jg sys_mknod # branch to system call | ||
58 | |||
59 | ENTRY(sys32_chmod_wrapper) | ||
60 | llgtr %r2,%r2 # const char * | ||
61 | llgfr %r3,%r3 # mode_t | ||
62 | jg sys_chmod # branch to system call | ||
63 | |||
64 | ENTRY(sys32_lchown16_wrapper) | ||
65 | llgtr %r2,%r2 # const char * | ||
66 | llgfr %r3,%r3 # __kernel_old_uid_emu31_t | ||
67 | llgfr %r4,%r4 # __kernel_old_uid_emu31_t | ||
68 | jg sys32_lchown16 # branch to system call | ||
69 | |||
70 | #sys32_getpid_wrapper # void | ||
71 | |||
72 | ENTRY(sys32_mount_wrapper) | ||
73 | llgtr %r2,%r2 # char * | ||
74 | llgtr %r3,%r3 # char * | ||
75 | llgtr %r4,%r4 # char * | ||
76 | llgfr %r5,%r5 # unsigned long | ||
77 | llgtr %r6,%r6 # void * | ||
78 | jg compat_sys_mount # branch to system call | ||
79 | |||
80 | ENTRY(sys32_oldumount_wrapper) | ||
81 | llgtr %r2,%r2 # char * | ||
82 | jg sys_oldumount # branch to system call | ||
83 | |||
84 | ENTRY(sys32_setuid16_wrapper) | ||
85 | llgfr %r2,%r2 # __kernel_old_uid_emu31_t | ||
86 | jg sys32_setuid16 # branch to system call | ||
87 | |||
88 | #sys32_getuid16_wrapper # void | ||
89 | |||
90 | ENTRY(sys32_ptrace_wrapper) | ||
91 | lgfr %r2,%r2 # long | ||
92 | lgfr %r3,%r3 # long | ||
93 | llgtr %r4,%r4 # long | ||
94 | llgfr %r5,%r5 # long | ||
95 | jg compat_sys_ptrace # branch to system call | ||
96 | |||
97 | ENTRY(sys32_alarm_wrapper) | ||
98 | llgfr %r2,%r2 # unsigned int | ||
99 | jg sys_alarm # branch to system call | ||
100 | |||
101 | ENTRY(compat_sys_utime_wrapper) | ||
102 | llgtr %r2,%r2 # char * | ||
103 | llgtr %r3,%r3 # struct compat_utimbuf * | ||
104 | jg compat_sys_utime # branch to system call | ||
105 | |||
106 | ENTRY(sys32_access_wrapper) | ||
107 | llgtr %r2,%r2 # const char * | ||
108 | lgfr %r3,%r3 # int | ||
109 | jg sys_access # branch to system call | ||
110 | |||
111 | ENTRY(sys32_nice_wrapper) | ||
112 | lgfr %r2,%r2 # int | ||
113 | jg sys_nice # branch to system call | ||
114 | |||
115 | #sys32_sync_wrapper # void | ||
116 | |||
117 | ENTRY(sys32_kill_wrapper) | ||
118 | lgfr %r2,%r2 # int | ||
119 | lgfr %r3,%r3 # int | ||
120 | jg sys_kill # branch to system call | ||
121 | |||
122 | ENTRY(sys32_rename_wrapper) | ||
123 | llgtr %r2,%r2 # const char * | ||
124 | llgtr %r3,%r3 # const char * | ||
125 | jg sys_rename # branch to system call | ||
126 | |||
127 | ENTRY(sys32_mkdir_wrapper) | ||
128 | llgtr %r2,%r2 # const char * | ||
129 | lgfr %r3,%r3 # int | ||
130 | jg sys_mkdir # branch to system call | ||
131 | |||
132 | ENTRY(sys32_rmdir_wrapper) | ||
133 | llgtr %r2,%r2 # const char * | ||
134 | jg sys_rmdir # branch to system call | ||
135 | |||
136 | ENTRY(sys32_dup_wrapper) | ||
137 | llgfr %r2,%r2 # unsigned int | ||
138 | jg sys_dup # branch to system call | ||
139 | |||
140 | ENTRY(sys32_pipe_wrapper) | ||
141 | llgtr %r2,%r2 # u32 * | ||
142 | jg sys_pipe # branch to system call | ||
143 | |||
144 | ENTRY(compat_sys_times_wrapper) | ||
145 | llgtr %r2,%r2 # struct compat_tms * | ||
146 | jg compat_sys_times # branch to system call | ||
147 | |||
148 | ENTRY(sys32_brk_wrapper) | ||
149 | llgtr %r2,%r2 # unsigned long | ||
150 | jg sys_brk # branch to system call | ||
151 | |||
152 | ENTRY(sys32_setgid16_wrapper) | ||
153 | llgfr %r2,%r2 # __kernel_old_gid_emu31_t | ||
154 | jg sys32_setgid16 # branch to system call | ||
155 | |||
156 | #sys32_getgid16_wrapper # void | ||
157 | |||
158 | ENTRY(sys32_signal_wrapper) | ||
159 | lgfr %r2,%r2 # int | ||
160 | llgtr %r3,%r3 # __sighandler_t | ||
161 | jg sys_signal | ||
162 | |||
163 | #sys32_geteuid16_wrapper # void | ||
164 | |||
165 | #sys32_getegid16_wrapper # void | ||
166 | |||
167 | ENTRY(sys32_acct_wrapper) | ||
168 | llgtr %r2,%r2 # char * | ||
169 | jg sys_acct # branch to system call | ||
170 | |||
171 | ENTRY(sys32_umount_wrapper) | ||
172 | llgtr %r2,%r2 # char * | ||
173 | lgfr %r3,%r3 # int | ||
174 | jg sys_umount # branch to system call | ||
175 | |||
176 | ENTRY(compat_sys_ioctl_wrapper) | ||
177 | llgfr %r2,%r2 # unsigned int | ||
178 | llgfr %r3,%r3 # unsigned int | ||
179 | llgfr %r4,%r4 # unsigned int | ||
180 | jg compat_sys_ioctl # branch to system call | ||
181 | |||
182 | ENTRY(compat_sys_fcntl_wrapper) | ||
183 | llgfr %r2,%r2 # unsigned int | ||
184 | llgfr %r3,%r3 # unsigned int | ||
185 | llgfr %r4,%r4 # unsigned long | ||
186 | jg compat_sys_fcntl # branch to system call | ||
187 | |||
188 | ENTRY(sys32_setpgid_wrapper) | ||
189 | lgfr %r2,%r2 # pid_t | ||
190 | lgfr %r3,%r3 # pid_t | ||
191 | jg sys_setpgid # branch to system call | ||
192 | |||
193 | ENTRY(sys32_umask_wrapper) | ||
194 | lgfr %r2,%r2 # int | ||
195 | jg sys_umask # branch to system call | ||
196 | |||
197 | ENTRY(sys32_chroot_wrapper) | ||
198 | llgtr %r2,%r2 # char * | ||
199 | jg sys_chroot # branch to system call | ||
200 | |||
201 | ENTRY(sys32_ustat_wrapper) | ||
202 | llgfr %r2,%r2 # dev_t | ||
203 | llgtr %r3,%r3 # struct ustat * | ||
204 | jg compat_sys_ustat | ||
205 | |||
206 | ENTRY(sys32_dup2_wrapper) | ||
207 | llgfr %r2,%r2 # unsigned int | ||
208 | llgfr %r3,%r3 # unsigned int | ||
209 | jg sys_dup2 # branch to system call | ||
210 | |||
211 | #sys32_getppid_wrapper # void | ||
212 | |||
213 | #sys32_getpgrp_wrapper # void | ||
214 | |||
215 | #sys32_setsid_wrapper # void | ||
216 | |||
217 | ENTRY(sys32_setreuid16_wrapper) | ||
218 | llgfr %r2,%r2 # __kernel_old_uid_emu31_t | ||
219 | llgfr %r3,%r3 # __kernel_old_uid_emu31_t | ||
220 | jg sys32_setreuid16 # branch to system call | ||
221 | |||
222 | ENTRY(sys32_setregid16_wrapper) | ||
223 | llgfr %r2,%r2 # __kernel_old_gid_emu31_t | ||
224 | llgfr %r3,%r3 # __kernel_old_gid_emu31_t | ||
225 | jg sys32_setregid16 # branch to system call | ||
226 | |||
227 | ENTRY(sys_sigsuspend_wrapper) | ||
228 | lgfr %r2,%r2 # int | ||
229 | lgfr %r3,%r3 # int | ||
230 | llgfr %r4,%r4 # old_sigset_t | ||
231 | jg sys_sigsuspend | ||
232 | |||
233 | ENTRY(compat_sys_sigpending_wrapper) | ||
234 | llgtr %r2,%r2 # compat_old_sigset_t * | ||
235 | jg compat_sys_sigpending # branch to system call | ||
236 | |||
237 | ENTRY(sys32_sethostname_wrapper) | ||
238 | llgtr %r2,%r2 # char * | ||
239 | lgfr %r3,%r3 # int | ||
240 | jg sys_sethostname # branch to system call | ||
241 | |||
242 | ENTRY(compat_sys_setrlimit_wrapper) | ||
243 | llgfr %r2,%r2 # unsigned int | ||
244 | llgtr %r3,%r3 # struct rlimit_emu31 * | ||
245 | jg compat_sys_setrlimit # branch to system call | ||
246 | |||
247 | ENTRY(compat_sys_old_getrlimit_wrapper) | ||
248 | llgfr %r2,%r2 # unsigned int | ||
249 | llgtr %r3,%r3 # struct rlimit_emu31 * | ||
250 | jg compat_sys_old_getrlimit # branch to system call | ||
251 | |||
252 | ENTRY(compat_sys_getrlimit_wrapper) | ||
253 | llgfr %r2,%r2 # unsigned int | ||
254 | llgtr %r3,%r3 # struct rlimit_emu31 * | ||
255 | jg compat_sys_getrlimit # branch to system call | ||
256 | |||
257 | ENTRY(sys32_mmap2_wrapper) | ||
258 | llgtr %r2,%r2 # struct mmap_arg_struct_emu31 * | ||
259 | jg sys32_mmap2 # branch to system call | ||
260 | |||
261 | ENTRY(compat_sys_gettimeofday_wrapper) | ||
262 | llgtr %r2,%r2 # struct timeval_emu31 * | ||
263 | llgtr %r3,%r3 # struct timezone * | ||
264 | jg compat_sys_gettimeofday # branch to system call | ||
265 | |||
266 | ENTRY(compat_sys_settimeofday_wrapper) | ||
267 | llgtr %r2,%r2 # struct timeval_emu31 * | ||
268 | llgtr %r3,%r3 # struct timezone * | ||
269 | jg compat_sys_settimeofday # branch to system call | ||
270 | |||
271 | ENTRY(sys32_getgroups16_wrapper) | ||
272 | lgfr %r2,%r2 # int | ||
273 | llgtr %r3,%r3 # __kernel_old_gid_emu31_t * | ||
274 | jg sys32_getgroups16 # branch to system call | ||
275 | |||
276 | ENTRY(sys32_setgroups16_wrapper) | ||
277 | lgfr %r2,%r2 # int | ||
278 | llgtr %r3,%r3 # __kernel_old_gid_emu31_t * | ||
279 | jg sys32_setgroups16 # branch to system call | ||
280 | |||
281 | ENTRY(sys32_symlink_wrapper) | ||
282 | llgtr %r2,%r2 # const char * | ||
283 | llgtr %r3,%r3 # const char * | ||
284 | jg sys_symlink # branch to system call | ||
285 | |||
286 | ENTRY(sys32_readlink_wrapper) | ||
287 | llgtr %r2,%r2 # const char * | ||
288 | llgtr %r3,%r3 # char * | ||
289 | lgfr %r4,%r4 # int | ||
290 | jg sys_readlink # branch to system call | ||
291 | |||
292 | ENTRY(sys32_uselib_wrapper) | ||
293 | llgtr %r2,%r2 # const char * | ||
294 | jg sys_uselib # branch to system call | ||
295 | |||
296 | ENTRY(sys32_swapon_wrapper) | ||
297 | llgtr %r2,%r2 # const char * | ||
298 | lgfr %r3,%r3 # int | ||
299 | jg sys_swapon # branch to system call | ||
300 | |||
301 | ENTRY(sys32_reboot_wrapper) | ||
302 | lgfr %r2,%r2 # int | ||
303 | lgfr %r3,%r3 # int | ||
304 | llgfr %r4,%r4 # unsigned int | ||
305 | llgtr %r5,%r5 # void * | ||
306 | jg sys_reboot # branch to system call | ||
307 | |||
308 | ENTRY(old32_readdir_wrapper) | ||
309 | llgfr %r2,%r2 # unsigned int | ||
310 | llgtr %r3,%r3 # void * | ||
311 | llgfr %r4,%r4 # unsigned int | ||
312 | jg compat_sys_old_readdir # branch to system call | ||
313 | |||
314 | ENTRY(old32_mmap_wrapper) | ||
315 | llgtr %r2,%r2 # struct mmap_arg_struct_emu31 * | ||
316 | jg old32_mmap # branch to system call | ||
317 | |||
318 | ENTRY(sys32_munmap_wrapper) | ||
319 | llgfr %r2,%r2 # unsigned long | ||
320 | llgfr %r3,%r3 # size_t | ||
321 | jg sys_munmap # branch to system call | ||
322 | |||
323 | ENTRY(sys32_fchmod_wrapper) | ||
324 | llgfr %r2,%r2 # unsigned int | ||
325 | llgfr %r3,%r3 # mode_t | ||
326 | jg sys_fchmod # branch to system call | ||
327 | |||
328 | ENTRY(sys32_fchown16_wrapper) | ||
329 | llgfr %r2,%r2 # unsigned int | ||
330 | llgfr %r3,%r3 # compat_uid_t | ||
331 | llgfr %r4,%r4 # compat_uid_t | ||
332 | jg sys32_fchown16 # branch to system call | ||
333 | |||
334 | ENTRY(sys32_getpriority_wrapper) | ||
335 | lgfr %r2,%r2 # int | ||
336 | lgfr %r3,%r3 # int | ||
337 | jg sys_getpriority # branch to system call | ||
338 | |||
339 | ENTRY(sys32_setpriority_wrapper) | ||
340 | lgfr %r2,%r2 # int | ||
341 | lgfr %r3,%r3 # int | ||
342 | lgfr %r4,%r4 # int | ||
343 | jg sys_setpriority # branch to system call | ||
344 | |||
345 | ENTRY(compat_sys_statfs_wrapper) | ||
346 | llgtr %r2,%r2 # char * | ||
347 | llgtr %r3,%r3 # struct compat_statfs * | ||
348 | jg compat_sys_statfs # branch to system call | ||
349 | |||
350 | ENTRY(compat_sys_fstatfs_wrapper) | ||
351 | llgfr %r2,%r2 # unsigned int | ||
352 | llgtr %r3,%r3 # struct compat_statfs * | ||
353 | jg compat_sys_fstatfs # branch to system call | ||
354 | |||
355 | ENTRY(compat_sys_socketcall_wrapper) | ||
356 | lgfr %r2,%r2 # int | ||
357 | llgtr %r3,%r3 # u32 * | ||
358 | jg compat_sys_socketcall # branch to system call | ||
359 | |||
360 | ENTRY(sys32_syslog_wrapper) | ||
361 | lgfr %r2,%r2 # int | ||
362 | llgtr %r3,%r3 # char * | ||
363 | lgfr %r4,%r4 # int | ||
364 | jg sys_syslog # branch to system call | ||
365 | |||
366 | ENTRY(compat_sys_newstat_wrapper) | ||
367 | llgtr %r2,%r2 # char * | ||
368 | llgtr %r3,%r3 # struct stat_emu31 * | ||
369 | jg compat_sys_newstat # branch to system call | ||
370 | |||
371 | ENTRY(compat_sys_newlstat_wrapper) | ||
372 | llgtr %r2,%r2 # char * | ||
373 | llgtr %r3,%r3 # struct stat_emu31 * | ||
374 | jg compat_sys_newlstat # branch to system call | ||
375 | |||
376 | ENTRY(compat_sys_newfstat_wrapper) | ||
377 | llgfr %r2,%r2 # unsigned int | ||
378 | llgtr %r3,%r3 # struct stat_emu31 * | ||
379 | jg compat_sys_newfstat # branch to system call | ||
380 | |||
381 | #sys32_vhangup_wrapper # void | ||
382 | |||
383 | ENTRY(sys32_swapoff_wrapper) | ||
384 | llgtr %r2,%r2 # const char * | ||
385 | jg sys_swapoff # branch to system call | ||
386 | |||
387 | ENTRY(compat_sys_sysinfo_wrapper) | ||
388 | llgtr %r2,%r2 # struct sysinfo_emu31 * | ||
389 | jg compat_sys_sysinfo # branch to system call | ||
390 | |||
391 | ENTRY(sys32_fsync_wrapper) | ||
392 | llgfr %r2,%r2 # unsigned int | ||
393 | jg sys_fsync # branch to system call | ||
394 | |||
395 | #sys32_sigreturn_wrapper # done in sigreturn_glue | ||
396 | |||
397 | #sys32_clone_wrapper # done in clone_glue | ||
398 | |||
399 | ENTRY(sys32_setdomainname_wrapper) | ||
400 | llgtr %r2,%r2 # char * | ||
401 | lgfr %r3,%r3 # int | ||
402 | jg sys_setdomainname # branch to system call | ||
403 | |||
404 | ENTRY(sys32_newuname_wrapper) | ||
405 | llgtr %r2,%r2 # struct new_utsname * | ||
406 | jg sys_newuname # branch to system call | ||
407 | |||
408 | ENTRY(compat_sys_adjtimex_wrapper) | ||
409 | llgtr %r2,%r2 # struct compat_timex * | ||
410 | jg compat_sys_adjtimex # branch to system call | ||
411 | |||
412 | ENTRY(sys32_mprotect_wrapper) | ||
413 | llgtr %r2,%r2 # unsigned long (actually pointer | ||
414 | llgfr %r3,%r3 # size_t | ||
415 | llgfr %r4,%r4 # unsigned long | ||
416 | jg sys_mprotect # branch to system call | ||
417 | |||
418 | ENTRY(sys_init_module_wrapper) | ||
419 | llgtr %r2,%r2 # void * | ||
420 | llgfr %r3,%r3 # unsigned long | ||
421 | llgtr %r4,%r4 # char * | ||
422 | jg sys_init_module # branch to system call | ||
423 | |||
424 | ENTRY(sys_delete_module_wrapper) | ||
425 | llgtr %r2,%r2 # const char * | ||
426 | llgfr %r3,%r3 # unsigned int | ||
427 | jg sys_delete_module # branch to system call | ||
428 | |||
429 | ENTRY(sys32_quotactl_wrapper) | ||
430 | llgfr %r2,%r2 # unsigned int | ||
431 | llgtr %r3,%r3 # const char * | ||
432 | llgfr %r4,%r4 # qid_t | ||
433 | llgtr %r5,%r5 # caddr_t | ||
434 | jg sys_quotactl # branch to system call | ||
435 | |||
436 | ENTRY(sys32_getpgid_wrapper) | ||
437 | lgfr %r2,%r2 # pid_t | ||
438 | jg sys_getpgid # branch to system call | ||
439 | |||
440 | ENTRY(sys32_fchdir_wrapper) | ||
441 | llgfr %r2,%r2 # unsigned int | ||
442 | jg sys_fchdir # branch to system call | ||
443 | |||
444 | ENTRY(sys32_bdflush_wrapper) | ||
445 | lgfr %r2,%r2 # int | ||
446 | lgfr %r3,%r3 # long | ||
447 | jg sys_bdflush # branch to system call | ||
448 | |||
449 | ENTRY(sys32_sysfs_wrapper) | ||
450 | lgfr %r2,%r2 # int | ||
451 | llgfr %r3,%r3 # unsigned long | ||
452 | llgfr %r4,%r4 # unsigned long | ||
453 | jg sys_sysfs # branch to system call | ||
454 | |||
455 | ENTRY(sys32_personality_wrapper) | ||
456 | llgfr %r2,%r2 # unsigned int | ||
457 | jg sys_s390_personality # branch to system call | ||
458 | |||
459 | ENTRY(sys32_setfsuid16_wrapper) | ||
460 | llgfr %r2,%r2 # __kernel_old_uid_emu31_t | ||
461 | jg sys32_setfsuid16 # branch to system call | ||
462 | |||
463 | ENTRY(sys32_setfsgid16_wrapper) | ||
464 | llgfr %r2,%r2 # __kernel_old_gid_emu31_t | ||
465 | jg sys32_setfsgid16 # branch to system call | ||
466 | |||
467 | ENTRY(sys32_llseek_wrapper) | ||
468 | llgfr %r2,%r2 # unsigned int | ||
469 | llgfr %r3,%r3 # unsigned long | ||
470 | llgfr %r4,%r4 # unsigned long | ||
471 | llgtr %r5,%r5 # loff_t * | ||
472 | llgfr %r6,%r6 # unsigned int | ||
473 | jg sys_llseek # branch to system call | ||
474 | |||
475 | ENTRY(sys32_getdents_wrapper) | ||
476 | llgfr %r2,%r2 # unsigned int | ||
477 | llgtr %r3,%r3 # void * | ||
478 | llgfr %r4,%r4 # unsigned int | ||
479 | jg compat_sys_getdents # branch to system call | ||
480 | |||
481 | ENTRY(compat_sys_select_wrapper) | ||
482 | lgfr %r2,%r2 # int | ||
483 | llgtr %r3,%r3 # compat_fd_set * | ||
484 | llgtr %r4,%r4 # compat_fd_set * | ||
485 | llgtr %r5,%r5 # compat_fd_set * | ||
486 | llgtr %r6,%r6 # struct compat_timeval * | ||
487 | jg compat_sys_select # branch to system call | ||
488 | |||
489 | ENTRY(sys32_flock_wrapper) | ||
490 | llgfr %r2,%r2 # unsigned int | ||
491 | llgfr %r3,%r3 # unsigned int | ||
492 | jg sys_flock # branch to system call | ||
493 | |||
494 | ENTRY(sys32_msync_wrapper) | ||
495 | llgfr %r2,%r2 # unsigned long | ||
496 | llgfr %r3,%r3 # size_t | ||
497 | lgfr %r4,%r4 # int | ||
498 | jg sys_msync # branch to system call | ||
499 | |||
500 | ENTRY(compat_sys_readv_wrapper) | ||
501 | lgfr %r2,%r2 # int | ||
502 | llgtr %r3,%r3 # const struct compat_iovec * | ||
503 | llgfr %r4,%r4 # unsigned long | ||
504 | jg compat_sys_readv # branch to system call | ||
505 | |||
506 | ENTRY(compat_sys_writev_wrapper) | ||
507 | lgfr %r2,%r2 # int | ||
508 | llgtr %r3,%r3 # const struct compat_iovec * | ||
509 | llgfr %r4,%r4 # unsigned long | ||
510 | jg compat_sys_writev # branch to system call | ||
511 | |||
512 | ENTRY(sys32_getsid_wrapper) | ||
513 | lgfr %r2,%r2 # pid_t | ||
514 | jg sys_getsid # branch to system call | ||
515 | |||
516 | ENTRY(sys32_fdatasync_wrapper) | ||
517 | llgfr %r2,%r2 # unsigned int | ||
518 | jg sys_fdatasync # branch to system call | ||
519 | |||
520 | ENTRY(sys32_mlock_wrapper) | ||
521 | llgfr %r2,%r2 # unsigned long | ||
522 | llgfr %r3,%r3 # size_t | ||
523 | jg sys_mlock # branch to system call | ||
524 | |||
525 | ENTRY(sys32_munlock_wrapper) | ||
526 | llgfr %r2,%r2 # unsigned long | ||
527 | llgfr %r3,%r3 # size_t | ||
528 | jg sys_munlock # branch to system call | ||
529 | |||
530 | ENTRY(sys32_mlockall_wrapper) | ||
531 | lgfr %r2,%r2 # int | ||
532 | jg sys_mlockall # branch to system call | ||
533 | |||
534 | #sys32_munlockall_wrapper # void | ||
535 | |||
536 | ENTRY(sys32_sched_setparam_wrapper) | ||
537 | lgfr %r2,%r2 # pid_t | ||
538 | llgtr %r3,%r3 # struct sched_param * | ||
539 | jg sys_sched_setparam # branch to system call | ||
540 | |||
541 | ENTRY(sys32_sched_getparam_wrapper) | ||
542 | lgfr %r2,%r2 # pid_t | ||
543 | llgtr %r3,%r3 # struct sched_param * | ||
544 | jg sys_sched_getparam # branch to system call | ||
545 | |||
546 | ENTRY(sys32_sched_setscheduler_wrapper) | ||
547 | lgfr %r2,%r2 # pid_t | ||
548 | lgfr %r3,%r3 # int | ||
549 | llgtr %r4,%r4 # struct sched_param * | ||
550 | jg sys_sched_setscheduler # branch to system call | ||
551 | |||
552 | ENTRY(sys32_sched_getscheduler_wrapper) | ||
553 | lgfr %r2,%r2 # pid_t | ||
554 | jg sys_sched_getscheduler # branch to system call | ||
555 | |||
556 | #sys32_sched_yield_wrapper # void | ||
557 | |||
558 | ENTRY(sys32_sched_get_priority_max_wrapper) | ||
559 | lgfr %r2,%r2 # int | ||
560 | jg sys_sched_get_priority_max # branch to system call | ||
561 | |||
562 | ENTRY(sys32_sched_get_priority_min_wrapper) | ||
563 | lgfr %r2,%r2 # int | ||
564 | jg sys_sched_get_priority_min # branch to system call | ||
565 | |||
566 | ENTRY(compat_sys_nanosleep_wrapper) | ||
567 | llgtr %r2,%r2 # struct compat_timespec * | ||
568 | llgtr %r3,%r3 # struct compat_timespec * | ||
569 | jg compat_sys_nanosleep # branch to system call | ||
570 | |||
571 | ENTRY(sys32_mremap_wrapper) | ||
572 | llgfr %r2,%r2 # unsigned long | ||
573 | llgfr %r3,%r3 # unsigned long | ||
574 | llgfr %r4,%r4 # unsigned long | ||
575 | llgfr %r5,%r5 # unsigned long | ||
576 | llgfr %r6,%r6 # unsigned long | ||
577 | jg sys_mremap # branch to system call | ||
578 | |||
579 | ENTRY(sys32_setresuid16_wrapper) | ||
580 | llgfr %r2,%r2 # __kernel_old_uid_emu31_t | ||
581 | llgfr %r3,%r3 # __kernel_old_uid_emu31_t | ||
582 | llgfr %r4,%r4 # __kernel_old_uid_emu31_t | ||
583 | jg sys32_setresuid16 # branch to system call | ||
584 | |||
585 | ENTRY(sys32_getresuid16_wrapper) | ||
586 | llgtr %r2,%r2 # __kernel_old_uid_emu31_t * | ||
587 | llgtr %r3,%r3 # __kernel_old_uid_emu31_t * | ||
588 | llgtr %r4,%r4 # __kernel_old_uid_emu31_t * | ||
589 | jg sys32_getresuid16 # branch to system call | ||
590 | |||
591 | ENTRY(sys32_poll_wrapper) | ||
592 | llgtr %r2,%r2 # struct pollfd * | ||
593 | llgfr %r3,%r3 # unsigned int | ||
594 | lgfr %r4,%r4 # int | ||
595 | jg sys_poll # branch to system call | ||
596 | |||
597 | ENTRY(sys32_setresgid16_wrapper) | ||
598 | llgfr %r2,%r2 # __kernel_old_gid_emu31_t | ||
599 | llgfr %r3,%r3 # __kernel_old_gid_emu31_t | ||
600 | llgfr %r4,%r4 # __kernel_old_gid_emu31_t | ||
601 | jg sys32_setresgid16 # branch to system call | ||
602 | |||
603 | ENTRY(sys32_getresgid16_wrapper) | ||
604 | llgtr %r2,%r2 # __kernel_old_gid_emu31_t * | ||
605 | llgtr %r3,%r3 # __kernel_old_gid_emu31_t * | ||
606 | llgtr %r4,%r4 # __kernel_old_gid_emu31_t * | ||
607 | jg sys32_getresgid16 # branch to system call | ||
608 | |||
609 | ENTRY(sys32_prctl_wrapper) | ||
610 | lgfr %r2,%r2 # int | ||
611 | llgfr %r3,%r3 # unsigned long | ||
612 | llgfr %r4,%r4 # unsigned long | ||
613 | llgfr %r5,%r5 # unsigned long | ||
614 | llgfr %r6,%r6 # unsigned long | ||
615 | jg sys_prctl # branch to system call | ||
616 | |||
617 | #sys32_rt_sigreturn_wrapper # done in rt_sigreturn_glue | ||
618 | |||
619 | ENTRY(sys32_pread64_wrapper) | ||
620 | llgfr %r2,%r2 # unsigned int | ||
621 | llgtr %r3,%r3 # char * | ||
622 | llgfr %r4,%r4 # size_t | ||
623 | llgfr %r5,%r5 # u32 | ||
624 | llgfr %r6,%r6 # u32 | ||
625 | jg sys32_pread64 # branch to system call | ||
626 | |||
627 | ENTRY(sys32_pwrite64_wrapper) | ||
628 | llgfr %r2,%r2 # unsigned int | ||
629 | llgtr %r3,%r3 # const char * | ||
630 | llgfr %r4,%r4 # size_t | ||
631 | llgfr %r5,%r5 # u32 | ||
632 | llgfr %r6,%r6 # u32 | ||
633 | jg sys32_pwrite64 # branch to system call | ||
634 | |||
635 | ENTRY(sys32_chown16_wrapper) | ||
636 | llgtr %r2,%r2 # const char * | ||
637 | llgfr %r3,%r3 # __kernel_old_uid_emu31_t | ||
638 | llgfr %r4,%r4 # __kernel_old_gid_emu31_t | ||
639 | jg sys32_chown16 # branch to system call | ||
640 | |||
641 | ENTRY(sys32_getcwd_wrapper) | ||
642 | llgtr %r2,%r2 # char * | ||
643 | llgfr %r3,%r3 # unsigned long | ||
644 | jg sys_getcwd # branch to system call | ||
645 | |||
646 | ENTRY(sys32_capget_wrapper) | ||
647 | llgtr %r2,%r2 # cap_user_header_t | ||
648 | llgtr %r3,%r3 # cap_user_data_t | ||
649 | jg sys_capget # branch to system call | ||
650 | |||
651 | ENTRY(sys32_capset_wrapper) | ||
652 | llgtr %r2,%r2 # cap_user_header_t | ||
653 | llgtr %r3,%r3 # const cap_user_data_t | ||
654 | jg sys_capset # branch to system call | ||
655 | |||
656 | #sys32_vfork_wrapper # done in vfork_glue | ||
657 | |||
658 | ENTRY(sys32_truncate64_wrapper) | ||
659 | llgtr %r2,%r2 # const char * | ||
660 | llgfr %r3,%r3 # unsigned long | ||
661 | llgfr %r4,%r4 # unsigned long | ||
662 | jg sys32_truncate64 # branch to system call | ||
663 | |||
664 | ENTRY(sys32_ftruncate64_wrapper) | ||
665 | llgfr %r2,%r2 # unsigned int | ||
666 | llgfr %r3,%r3 # unsigned long | ||
667 | llgfr %r4,%r4 # unsigned long | ||
668 | jg sys32_ftruncate64 # branch to system call | ||
669 | |||
670 | ENTRY(sys32_lchown_wrapper) | ||
671 | llgtr %r2,%r2 # const char * | ||
672 | llgfr %r3,%r3 # uid_t | ||
673 | llgfr %r4,%r4 # gid_t | ||
674 | jg sys_lchown # branch to system call | ||
675 | |||
676 | #sys32_getuid_wrapper # void | ||
677 | #sys32_getgid_wrapper # void | ||
678 | #sys32_geteuid_wrapper # void | ||
679 | #sys32_getegid_wrapper # void | ||
680 | |||
681 | ENTRY(sys32_setreuid_wrapper) | ||
682 | llgfr %r2,%r2 # uid_t | ||
683 | llgfr %r3,%r3 # uid_t | ||
684 | jg sys_setreuid # branch to system call | ||
685 | |||
686 | ENTRY(sys32_setregid_wrapper) | ||
687 | llgfr %r2,%r2 # gid_t | ||
688 | llgfr %r3,%r3 # gid_t | ||
689 | jg sys_setregid # branch to system call | ||
690 | |||
691 | ENTRY(sys32_getgroups_wrapper) | ||
692 | lgfr %r2,%r2 # int | ||
693 | llgtr %r3,%r3 # gid_t * | ||
694 | jg sys_getgroups # branch to system call | ||
695 | |||
696 | ENTRY(sys32_setgroups_wrapper) | ||
697 | lgfr %r2,%r2 # int | ||
698 | llgtr %r3,%r3 # gid_t * | ||
699 | jg sys_setgroups # branch to system call | ||
700 | |||
701 | ENTRY(sys32_fchown_wrapper) | ||
702 | llgfr %r2,%r2 # unsigned int | ||
703 | llgfr %r3,%r3 # uid_t | ||
704 | llgfr %r4,%r4 # gid_t | ||
705 | jg sys_fchown # branch to system call | ||
706 | |||
707 | ENTRY(sys32_setresuid_wrapper) | ||
708 | llgfr %r2,%r2 # uid_t | ||
709 | llgfr %r3,%r3 # uid_t | ||
710 | llgfr %r4,%r4 # uid_t | ||
711 | jg sys_setresuid # branch to system call | ||
712 | |||
713 | ENTRY(sys32_getresuid_wrapper) | ||
714 | llgtr %r2,%r2 # uid_t * | ||
715 | llgtr %r3,%r3 # uid_t * | ||
716 | llgtr %r4,%r4 # uid_t * | ||
717 | jg sys_getresuid # branch to system call | ||
718 | |||
719 | ENTRY(sys32_setresgid_wrapper) | ||
720 | llgfr %r2,%r2 # gid_t | ||
721 | llgfr %r3,%r3 # gid_t | ||
722 | llgfr %r4,%r4 # gid_t | ||
723 | jg sys_setresgid # branch to system call | ||
724 | |||
725 | ENTRY(sys32_getresgid_wrapper) | ||
726 | llgtr %r2,%r2 # gid_t * | ||
727 | llgtr %r3,%r3 # gid_t * | ||
728 | llgtr %r4,%r4 # gid_t * | ||
729 | jg sys_getresgid # branch to system call | ||
730 | |||
731 | ENTRY(sys32_chown_wrapper) | ||
732 | llgtr %r2,%r2 # const char * | ||
733 | llgfr %r3,%r3 # uid_t | ||
734 | llgfr %r4,%r4 # gid_t | ||
735 | jg sys_chown # branch to system call | ||
736 | |||
737 | ENTRY(sys32_setuid_wrapper) | ||
738 | llgfr %r2,%r2 # uid_t | ||
739 | jg sys_setuid # branch to system call | ||
740 | |||
741 | ENTRY(sys32_setgid_wrapper) | ||
742 | llgfr %r2,%r2 # gid_t | ||
743 | jg sys_setgid # branch to system call | ||
744 | |||
745 | ENTRY(sys32_setfsuid_wrapper) | ||
746 | llgfr %r2,%r2 # uid_t | ||
747 | jg sys_setfsuid # branch to system call | ||
748 | |||
749 | ENTRY(sys32_setfsgid_wrapper) | ||
750 | llgfr %r2,%r2 # gid_t | ||
751 | jg sys_setfsgid # branch to system call | ||
752 | |||
753 | ENTRY(sys32_pivot_root_wrapper) | ||
754 | llgtr %r2,%r2 # const char * | ||
755 | llgtr %r3,%r3 # const char * | ||
756 | jg sys_pivot_root # branch to system call | ||
757 | |||
758 | ENTRY(sys32_mincore_wrapper) | ||
759 | llgfr %r2,%r2 # unsigned long | ||
760 | llgfr %r3,%r3 # size_t | ||
761 | llgtr %r4,%r4 # unsigned char * | ||
762 | jg sys_mincore # branch to system call | ||
763 | |||
764 | ENTRY(sys32_madvise_wrapper) | ||
765 | llgfr %r2,%r2 # unsigned long | ||
766 | llgfr %r3,%r3 # size_t | ||
767 | lgfr %r4,%r4 # int | ||
768 | jg sys_madvise # branch to system call | ||
769 | |||
770 | ENTRY(sys32_getdents64_wrapper) | ||
771 | llgfr %r2,%r2 # unsigned int | ||
772 | llgtr %r3,%r3 # void * | ||
773 | llgfr %r4,%r4 # unsigned int | ||
774 | jg sys_getdents64 # branch to system call | ||
775 | |||
776 | ENTRY(compat_sys_fcntl64_wrapper) | ||
777 | llgfr %r2,%r2 # unsigned int | ||
778 | llgfr %r3,%r3 # unsigned int | ||
779 | llgfr %r4,%r4 # unsigned long | ||
780 | jg compat_sys_fcntl64 # branch to system call | ||
781 | |||
782 | ENTRY(sys32_stat64_wrapper) | ||
783 | llgtr %r2,%r2 # char * | ||
784 | llgtr %r3,%r3 # struct stat64 * | ||
785 | jg sys32_stat64 # branch to system call | ||
786 | |||
787 | ENTRY(sys32_lstat64_wrapper) | ||
788 | llgtr %r2,%r2 # char * | ||
789 | llgtr %r3,%r3 # struct stat64 * | ||
790 | jg sys32_lstat64 # branch to system call | ||
791 | |||
792 | ENTRY(sys32_stime_wrapper) | ||
793 | llgtr %r2,%r2 # long * | ||
794 | jg compat_sys_stime # branch to system call | ||
795 | |||
796 | ENTRY(sys32_fstat64_wrapper) | ||
797 | llgfr %r2,%r2 # unsigned long | ||
798 | llgtr %r3,%r3 # struct stat64 * | ||
799 | jg sys32_fstat64 # branch to system call | ||
800 | |||
801 | ENTRY(sys32_setxattr_wrapper) | ||
802 | llgtr %r2,%r2 # char * | ||
803 | llgtr %r3,%r3 # char * | ||
804 | llgtr %r4,%r4 # void * | ||
805 | llgfr %r5,%r5 # size_t | ||
806 | lgfr %r6,%r6 # int | ||
807 | jg sys_setxattr | ||
808 | |||
809 | ENTRY(sys32_lsetxattr_wrapper) | ||
810 | llgtr %r2,%r2 # char * | ||
811 | llgtr %r3,%r3 # char * | ||
812 | llgtr %r4,%r4 # void * | ||
813 | llgfr %r5,%r5 # size_t | ||
814 | lgfr %r6,%r6 # int | ||
815 | jg sys_lsetxattr | ||
816 | |||
817 | ENTRY(sys32_fsetxattr_wrapper) | ||
818 | lgfr %r2,%r2 # int | ||
819 | llgtr %r3,%r3 # char * | ||
820 | llgtr %r4,%r4 # void * | ||
821 | llgfr %r5,%r5 # size_t | ||
822 | lgfr %r6,%r6 # int | ||
823 | jg sys_fsetxattr | ||
824 | |||
825 | ENTRY(sys32_getxattr_wrapper) | ||
826 | llgtr %r2,%r2 # char * | ||
827 | llgtr %r3,%r3 # char * | ||
828 | llgtr %r4,%r4 # void * | ||
829 | llgfr %r5,%r5 # size_t | ||
830 | jg sys_getxattr | ||
831 | |||
832 | ENTRY(sys32_lgetxattr_wrapper) | ||
833 | llgtr %r2,%r2 # char * | ||
834 | llgtr %r3,%r3 # char * | ||
835 | llgtr %r4,%r4 # void * | ||
836 | llgfr %r5,%r5 # size_t | ||
837 | jg sys_lgetxattr | ||
838 | |||
839 | ENTRY(sys32_fgetxattr_wrapper) | ||
840 | lgfr %r2,%r2 # int | ||
841 | llgtr %r3,%r3 # char * | ||
842 | llgtr %r4,%r4 # void * | ||
843 | llgfr %r5,%r5 # size_t | ||
844 | jg sys_fgetxattr | ||
845 | |||
846 | ENTRY(sys32_listxattr_wrapper) | ||
847 | llgtr %r2,%r2 # char * | ||
848 | llgtr %r3,%r3 # char * | ||
849 | llgfr %r4,%r4 # size_t | ||
850 | jg sys_listxattr | ||
851 | |||
852 | ENTRY(sys32_llistxattr_wrapper) | ||
853 | llgtr %r2,%r2 # char * | ||
854 | llgtr %r3,%r3 # char * | ||
855 | llgfr %r4,%r4 # size_t | ||
856 | jg sys_llistxattr | ||
857 | |||
858 | ENTRY(sys32_flistxattr_wrapper) | ||
859 | lgfr %r2,%r2 # int | ||
860 | llgtr %r3,%r3 # char * | ||
861 | llgfr %r4,%r4 # size_t | ||
862 | jg sys_flistxattr | ||
863 | |||
864 | ENTRY(sys32_removexattr_wrapper) | ||
865 | llgtr %r2,%r2 # char * | ||
866 | llgtr %r3,%r3 # char * | ||
867 | jg sys_removexattr | ||
868 | |||
869 | ENTRY(sys32_lremovexattr_wrapper) | ||
870 | llgtr %r2,%r2 # char * | ||
871 | llgtr %r3,%r3 # char * | ||
872 | jg sys_lremovexattr | ||
873 | |||
874 | ENTRY(sys32_fremovexattr_wrapper) | ||
875 | lgfr %r2,%r2 # int | ||
876 | llgtr %r3,%r3 # char * | ||
877 | jg sys_fremovexattr | ||
878 | |||
879 | ENTRY(sys32_sched_setaffinity_wrapper) | ||
880 | lgfr %r2,%r2 # int | ||
881 | llgfr %r3,%r3 # unsigned int | ||
882 | llgtr %r4,%r4 # unsigned long * | ||
883 | jg compat_sys_sched_setaffinity | ||
884 | |||
885 | ENTRY(sys32_sched_getaffinity_wrapper) | ||
886 | lgfr %r2,%r2 # int | ||
887 | llgfr %r3,%r3 # unsigned int | ||
888 | llgtr %r4,%r4 # unsigned long * | ||
889 | jg compat_sys_sched_getaffinity | ||
890 | |||
891 | ENTRY(sys32_exit_group_wrapper) | ||
892 | lgfr %r2,%r2 # int | ||
893 | jg sys_exit_group # branch to system call | ||
894 | |||
895 | ENTRY(sys32_set_tid_address_wrapper) | ||
896 | llgtr %r2,%r2 # int * | ||
897 | jg sys_set_tid_address # branch to system call | ||
898 | |||
899 | ENTRY(sys_epoll_create_wrapper) | ||
900 | lgfr %r2,%r2 # int | ||
901 | jg sys_epoll_create # branch to system call | ||
902 | |||
903 | ENTRY(sys_epoll_ctl_wrapper) | ||
904 | lgfr %r2,%r2 # int | ||
905 | lgfr %r3,%r3 # int | ||
906 | lgfr %r4,%r4 # int | ||
907 | llgtr %r5,%r5 # struct epoll_event * | ||
908 | jg sys_epoll_ctl # branch to system call | ||
909 | |||
910 | ENTRY(sys_epoll_wait_wrapper) | ||
911 | lgfr %r2,%r2 # int | ||
912 | llgtr %r3,%r3 # struct epoll_event * | ||
913 | lgfr %r4,%r4 # int | ||
914 | lgfr %r5,%r5 # int | ||
915 | jg sys_epoll_wait # branch to system call | ||
916 | |||
917 | ENTRY(sys32_fadvise64_wrapper) | ||
918 | lgfr %r2,%r2 # int | ||
919 | sllg %r3,%r3,32 # get high word of 64bit loff_t | ||
920 | or %r3,%r4 # get low word of 64bit loff_t | ||
921 | llgfr %r4,%r5 # size_t (unsigned long) | ||
922 | lgfr %r5,%r6 # int | ||
923 | jg sys32_fadvise64 | ||
924 | |||
925 | ENTRY(sys32_fadvise64_64_wrapper) | ||
926 | llgtr %r2,%r2 # struct fadvise64_64_args * | ||
927 | jg sys32_fadvise64_64 | ||
928 | |||
929 | ENTRY(sys32_clock_settime_wrapper) | ||
930 | lgfr %r2,%r2 # clockid_t (int) | ||
931 | llgtr %r3,%r3 # struct compat_timespec * | ||
932 | jg compat_sys_clock_settime | ||
933 | |||
934 | ENTRY(sys32_clock_gettime_wrapper) | ||
935 | lgfr %r2,%r2 # clockid_t (int) | ||
936 | llgtr %r3,%r3 # struct compat_timespec * | ||
937 | jg compat_sys_clock_gettime | ||
938 | |||
939 | ENTRY(sys32_clock_getres_wrapper) | ||
940 | lgfr %r2,%r2 # clockid_t (int) | ||
941 | llgtr %r3,%r3 # struct compat_timespec * | ||
942 | jg compat_sys_clock_getres | ||
943 | |||
944 | ENTRY(sys32_clock_nanosleep_wrapper) | ||
945 | lgfr %r2,%r2 # clockid_t (int) | ||
946 | lgfr %r3,%r3 # int | ||
947 | llgtr %r4,%r4 # struct compat_timespec * | ||
948 | llgtr %r5,%r5 # struct compat_timespec * | ||
949 | jg compat_sys_clock_nanosleep | ||
950 | |||
951 | ENTRY(sys32_timer_create_wrapper) | ||
952 | lgfr %r2,%r2 # timer_t (int) | ||
953 | llgtr %r3,%r3 # struct compat_sigevent * | ||
954 | llgtr %r4,%r4 # timer_t * | ||
955 | jg compat_sys_timer_create | ||
956 | |||
957 | ENTRY(sys32_timer_settime_wrapper) | ||
958 | lgfr %r2,%r2 # timer_t (int) | ||
959 | lgfr %r3,%r3 # int | ||
960 | llgtr %r4,%r4 # struct compat_itimerspec * | ||
961 | llgtr %r5,%r5 # struct compat_itimerspec * | ||
962 | jg compat_sys_timer_settime | ||
963 | |||
964 | ENTRY(sys32_timer_gettime_wrapper) | ||
965 | lgfr %r2,%r2 # timer_t (int) | ||
966 | llgtr %r3,%r3 # struct compat_itimerspec * | ||
967 | jg compat_sys_timer_gettime | ||
968 | |||
969 | ENTRY(sys32_timer_getoverrun_wrapper) | ||
970 | lgfr %r2,%r2 # timer_t (int) | ||
971 | jg sys_timer_getoverrun | ||
972 | |||
973 | ENTRY(sys32_timer_delete_wrapper) | ||
974 | lgfr %r2,%r2 # timer_t (int) | ||
975 | jg sys_timer_delete | ||
976 | |||
977 | ENTRY(sys32_io_setup_wrapper) | ||
978 | llgfr %r2,%r2 # unsigned int | ||
979 | llgtr %r3,%r3 # u32 * | ||
980 | jg compat_sys_io_setup | ||
981 | |||
982 | ENTRY(sys32_io_destroy_wrapper) | ||
983 | llgfr %r2,%r2 # (aio_context_t) u32 | ||
984 | jg sys_io_destroy | ||
985 | |||
986 | ENTRY(sys32_io_getevents_wrapper) | ||
987 | llgfr %r2,%r2 # (aio_context_t) u32 | ||
988 | lgfr %r3,%r3 # long | ||
989 | lgfr %r4,%r4 # long | ||
990 | llgtr %r5,%r5 # struct io_event * | ||
991 | llgtr %r6,%r6 # struct compat_timespec * | ||
992 | jg compat_sys_io_getevents | ||
993 | |||
994 | ENTRY(sys32_io_submit_wrapper) | ||
995 | llgfr %r2,%r2 # (aio_context_t) u32 | ||
996 | lgfr %r3,%r3 # long | ||
997 | llgtr %r4,%r4 # struct iocb ** | ||
998 | jg compat_sys_io_submit | ||
999 | |||
1000 | ENTRY(sys32_io_cancel_wrapper) | ||
1001 | llgfr %r2,%r2 # (aio_context_t) u32 | ||
1002 | llgtr %r3,%r3 # struct iocb * | ||
1003 | llgtr %r4,%r4 # struct io_event * | ||
1004 | jg sys_io_cancel | ||
1005 | |||
1006 | ENTRY(compat_sys_statfs64_wrapper) | ||
1007 | llgtr %r2,%r2 # const char * | ||
1008 | llgfr %r3,%r3 # compat_size_t | ||
1009 | llgtr %r4,%r4 # struct compat_statfs64 * | ||
1010 | jg compat_sys_statfs64 | ||
1011 | |||
1012 | ENTRY(compat_sys_fstatfs64_wrapper) | ||
1013 | llgfr %r2,%r2 # unsigned int fd | ||
1014 | llgfr %r3,%r3 # compat_size_t | ||
1015 | llgtr %r4,%r4 # struct compat_statfs64 * | ||
1016 | jg compat_sys_fstatfs64 | ||
1017 | |||
1018 | ENTRY(compat_sys_mq_open_wrapper) | ||
1019 | llgtr %r2,%r2 # const char * | ||
1020 | lgfr %r3,%r3 # int | ||
1021 | llgfr %r4,%r4 # mode_t | ||
1022 | llgtr %r5,%r5 # struct compat_mq_attr * | ||
1023 | jg compat_sys_mq_open | ||
1024 | |||
1025 | ENTRY(sys32_mq_unlink_wrapper) | ||
1026 | llgtr %r2,%r2 # const char * | ||
1027 | jg sys_mq_unlink | ||
1028 | |||
1029 | ENTRY(compat_sys_mq_timedsend_wrapper) | ||
1030 | lgfr %r2,%r2 # mqd_t | ||
1031 | llgtr %r3,%r3 # const char * | ||
1032 | llgfr %r4,%r4 # size_t | ||
1033 | llgfr %r5,%r5 # unsigned int | ||
1034 | llgtr %r6,%r6 # const struct compat_timespec * | ||
1035 | jg compat_sys_mq_timedsend | ||
1036 | |||
1037 | ENTRY(compat_sys_mq_timedreceive_wrapper) | ||
1038 | lgfr %r2,%r2 # mqd_t | ||
1039 | llgtr %r3,%r3 # char * | ||
1040 | llgfr %r4,%r4 # size_t | ||
1041 | llgtr %r5,%r5 # unsigned int * | ||
1042 | llgtr %r6,%r6 # const struct compat_timespec * | ||
1043 | jg compat_sys_mq_timedreceive | ||
1044 | |||
1045 | ENTRY(compat_sys_mq_notify_wrapper) | ||
1046 | lgfr %r2,%r2 # mqd_t | ||
1047 | llgtr %r3,%r3 # struct compat_sigevent * | ||
1048 | jg compat_sys_mq_notify | ||
1049 | |||
1050 | ENTRY(compat_sys_mq_getsetattr_wrapper) | ||
1051 | lgfr %r2,%r2 # mqd_t | ||
1052 | llgtr %r3,%r3 # struct compat_mq_attr * | ||
1053 | llgtr %r4,%r4 # struct compat_mq_attr * | ||
1054 | jg compat_sys_mq_getsetattr | ||
1055 | |||
1056 | ENTRY(compat_sys_add_key_wrapper) | ||
1057 | llgtr %r2,%r2 # const char * | ||
1058 | llgtr %r3,%r3 # const char * | ||
1059 | llgtr %r4,%r4 # const void * | ||
1060 | llgfr %r5,%r5 # size_t | ||
1061 | llgfr %r6,%r6 # (key_serial_t) u32 | ||
1062 | jg sys_add_key | ||
1063 | |||
1064 | ENTRY(compat_sys_request_key_wrapper) | ||
1065 | llgtr %r2,%r2 # const char * | ||
1066 | llgtr %r3,%r3 # const char * | ||
1067 | llgtr %r4,%r4 # const void * | ||
1068 | llgfr %r5,%r5 # (key_serial_t) u32 | ||
1069 | jg sys_request_key | ||
1070 | |||
1071 | ENTRY(sys32_remap_file_pages_wrapper) | ||
1072 | llgfr %r2,%r2 # unsigned long | ||
1073 | llgfr %r3,%r3 # unsigned long | ||
1074 | llgfr %r4,%r4 # unsigned long | ||
1075 | llgfr %r5,%r5 # unsigned long | ||
1076 | llgfr %r6,%r6 # unsigned long | ||
1077 | jg sys_remap_file_pages | ||
1078 | |||
1079 | ENTRY(compat_sys_kexec_load_wrapper) | ||
1080 | llgfr %r2,%r2 # unsigned long | ||
1081 | llgfr %r3,%r3 # unsigned long | ||
1082 | llgtr %r4,%r4 # struct kexec_segment * | ||
1083 | llgfr %r5,%r5 # unsigned long | ||
1084 | jg compat_sys_kexec_load | ||
1085 | |||
1086 | ENTRY(sys_ioprio_set_wrapper) | ||
1087 | lgfr %r2,%r2 # int | ||
1088 | lgfr %r3,%r3 # int | ||
1089 | lgfr %r4,%r4 # int | ||
1090 | jg sys_ioprio_set | ||
1091 | |||
1092 | ENTRY(sys_ioprio_get_wrapper) | ||
1093 | lgfr %r2,%r2 # int | ||
1094 | lgfr %r3,%r3 # int | ||
1095 | jg sys_ioprio_get | ||
1096 | |||
1097 | ENTRY(sys_inotify_add_watch_wrapper) | ||
1098 | lgfr %r2,%r2 # int | ||
1099 | llgtr %r3,%r3 # const char * | ||
1100 | llgfr %r4,%r4 # u32 | ||
1101 | jg sys_inotify_add_watch | ||
1102 | |||
1103 | ENTRY(sys_inotify_rm_watch_wrapper) | ||
1104 | lgfr %r2,%r2 # int | ||
1105 | llgfr %r3,%r3 # u32 | ||
1106 | jg sys_inotify_rm_watch | ||
1107 | |||
1108 | ENTRY(sys_mkdirat_wrapper) | ||
1109 | lgfr %r2,%r2 # int | ||
1110 | llgtr %r3,%r3 # const char * | ||
1111 | lgfr %r4,%r4 # int | ||
1112 | jg sys_mkdirat | ||
1113 | |||
1114 | ENTRY(sys_mknodat_wrapper) | ||
1115 | lgfr %r2,%r2 # int | ||
1116 | llgtr %r3,%r3 # const char * | ||
1117 | lgfr %r4,%r4 # int | ||
1118 | llgfr %r5,%r5 # unsigned int | ||
1119 | jg sys_mknodat | ||
1120 | |||
1121 | ENTRY(sys_fchownat_wrapper) | ||
1122 | lgfr %r2,%r2 # int | ||
1123 | llgtr %r3,%r3 # const char * | ||
1124 | llgfr %r4,%r4 # uid_t | ||
1125 | llgfr %r5,%r5 # gid_t | ||
1126 | lgfr %r6,%r6 # int | ||
1127 | jg sys_fchownat | ||
1128 | |||
1129 | ENTRY(compat_sys_futimesat_wrapper) | ||
1130 | llgfr %r2,%r2 # unsigned int | ||
1131 | llgtr %r3,%r3 # char * | ||
1132 | llgtr %r4,%r4 # struct timeval * | ||
1133 | jg compat_sys_futimesat | ||
1134 | |||
1135 | ENTRY(sys32_fstatat64_wrapper) | ||
1136 | llgfr %r2,%r2 # unsigned int | ||
1137 | llgtr %r3,%r3 # char * | ||
1138 | llgtr %r4,%r4 # struct stat64 * | ||
1139 | lgfr %r5,%r5 # int | ||
1140 | jg sys32_fstatat64 | ||
1141 | |||
1142 | ENTRY(sys_unlinkat_wrapper) | ||
1143 | lgfr %r2,%r2 # int | ||
1144 | llgtr %r3,%r3 # const char * | ||
1145 | lgfr %r4,%r4 # int | ||
1146 | jg sys_unlinkat | ||
1147 | |||
1148 | ENTRY(sys_renameat_wrapper) | ||
1149 | lgfr %r2,%r2 # int | ||
1150 | llgtr %r3,%r3 # const char * | ||
1151 | lgfr %r4,%r4 # int | ||
1152 | llgtr %r5,%r5 # const char * | ||
1153 | jg sys_renameat | ||
1154 | |||
1155 | ENTRY(sys_linkat_wrapper) | ||
1156 | lgfr %r2,%r2 # int | ||
1157 | llgtr %r3,%r3 # const char * | ||
1158 | lgfr %r4,%r4 # int | ||
1159 | llgtr %r5,%r5 # const char * | ||
1160 | lgfr %r6,%r6 # int | ||
1161 | jg sys_linkat | ||
1162 | |||
1163 | ENTRY(sys_symlinkat_wrapper) | ||
1164 | llgtr %r2,%r2 # const char * | ||
1165 | lgfr %r3,%r3 # int | ||
1166 | llgtr %r4,%r4 # const char * | ||
1167 | jg sys_symlinkat | ||
1168 | |||
1169 | ENTRY(sys_readlinkat_wrapper) | ||
1170 | lgfr %r2,%r2 # int | ||
1171 | llgtr %r3,%r3 # const char * | ||
1172 | llgtr %r4,%r4 # char * | ||
1173 | lgfr %r5,%r5 # int | ||
1174 | jg sys_readlinkat | ||
1175 | |||
1176 | ENTRY(sys_fchmodat_wrapper) | ||
1177 | lgfr %r2,%r2 # int | ||
1178 | llgtr %r3,%r3 # const char * | ||
1179 | llgfr %r4,%r4 # mode_t | ||
1180 | jg sys_fchmodat | ||
1181 | |||
1182 | ENTRY(sys_faccessat_wrapper) | ||
1183 | lgfr %r2,%r2 # int | ||
1184 | llgtr %r3,%r3 # const char * | ||
1185 | lgfr %r4,%r4 # int | ||
1186 | jg sys_faccessat | ||
1187 | |||
1188 | ENTRY(compat_sys_pselect6_wrapper) | ||
1189 | lgfr %r2,%r2 # int | ||
1190 | llgtr %r3,%r3 # fd_set * | ||
1191 | llgtr %r4,%r4 # fd_set * | ||
1192 | llgtr %r5,%r5 # fd_set * | ||
1193 | llgtr %r6,%r6 # struct timespec * | ||
1194 | llgt %r0,164(%r15) # void * | ||
1195 | stg %r0,160(%r15) | ||
1196 | jg compat_sys_pselect6 | ||
1197 | |||
1198 | ENTRY(compat_sys_ppoll_wrapper) | ||
1199 | llgtr %r2,%r2 # struct pollfd * | ||
1200 | llgfr %r3,%r3 # unsigned int | ||
1201 | llgtr %r4,%r4 # struct timespec * | ||
1202 | llgtr %r5,%r5 # const sigset_t * | ||
1203 | llgfr %r6,%r6 # size_t | ||
1204 | jg compat_sys_ppoll | ||
1205 | |||
1206 | ENTRY(sys_unshare_wrapper) | ||
1207 | llgfr %r2,%r2 # unsigned long | ||
1208 | jg sys_unshare | ||
1209 | |||
1210 | ENTRY(sys_splice_wrapper) | ||
1211 | lgfr %r2,%r2 # int | ||
1212 | llgtr %r3,%r3 # loff_t * | ||
1213 | lgfr %r4,%r4 # int | ||
1214 | llgtr %r5,%r5 # loff_t * | ||
1215 | llgfr %r6,%r6 # size_t | ||
1216 | llgf %r0,164(%r15) # unsigned int | ||
1217 | stg %r0,160(%r15) | ||
1218 | jg sys_splice | ||
1219 | |||
1220 | ENTRY(sys_sync_file_range_wrapper) | ||
1221 | lgfr %r2,%r2 # int | ||
1222 | sllg %r3,%r3,32 # get high word of 64bit loff_t | ||
1223 | or %r3,%r4 # get low word of 64bit loff_t | ||
1224 | sllg %r4,%r5,32 # get high word of 64bit loff_t | ||
1225 | or %r4,%r6 # get low word of 64bit loff_t | ||
1226 | llgf %r5,164(%r15) # unsigned int | ||
1227 | jg sys_sync_file_range | ||
1228 | |||
1229 | ENTRY(sys_tee_wrapper) | ||
1230 | lgfr %r2,%r2 # int | ||
1231 | lgfr %r3,%r3 # int | ||
1232 | llgfr %r4,%r4 # size_t | ||
1233 | llgfr %r5,%r5 # unsigned int | ||
1234 | jg sys_tee | ||
1235 | |||
1236 | ENTRY(sys_getcpu_wrapper) | ||
1237 | llgtr %r2,%r2 # unsigned * | ||
1238 | llgtr %r3,%r3 # unsigned * | ||
1239 | llgtr %r4,%r4 # struct getcpu_cache * | ||
1240 | jg sys_getcpu | ||
1241 | |||
1242 | ENTRY(compat_sys_utimes_wrapper) | ||
1243 | llgtr %r2,%r2 # char * | ||
1244 | llgtr %r3,%r3 # struct compat_timeval * | ||
1245 | jg compat_sys_utimes | ||
1246 | |||
1247 | ENTRY(compat_sys_utimensat_wrapper) | ||
1248 | llgfr %r2,%r2 # unsigned int | ||
1249 | llgtr %r3,%r3 # char * | ||
1250 | llgtr %r4,%r4 # struct compat_timespec * | ||
1251 | lgfr %r5,%r5 # int | ||
1252 | jg compat_sys_utimensat | ||
1253 | |||
1254 | ENTRY(sys_eventfd_wrapper) | ||
1255 | llgfr %r2,%r2 # unsigned int | ||
1256 | jg sys_eventfd | ||
1257 | |||
1258 | ENTRY(sys_fallocate_wrapper) | ||
1259 | lgfr %r2,%r2 # int | ||
1260 | lgfr %r3,%r3 # int | ||
1261 | sllg %r4,%r4,32 # get high word of 64bit loff_t | ||
1262 | lr %r4,%r5 # get low word of 64bit loff_t | ||
1263 | sllg %r5,%r6,32 # get high word of 64bit loff_t | ||
1264 | l %r5,164(%r15) # get low word of 64bit loff_t | ||
1265 | jg sys_fallocate | ||
1266 | |||
1267 | ENTRY(sys_timerfd_create_wrapper) | ||
1268 | lgfr %r2,%r2 # int | ||
1269 | lgfr %r3,%r3 # int | ||
1270 | jg sys_timerfd_create | ||
1271 | |||
1272 | ENTRY(sys_eventfd2_wrapper) | ||
1273 | llgfr %r2,%r2 # unsigned int | ||
1274 | lgfr %r3,%r3 # int | ||
1275 | jg sys_eventfd2 | ||
1276 | |||
1277 | ENTRY(sys_inotify_init1_wrapper) | ||
1278 | lgfr %r2,%r2 # int | ||
1279 | jg sys_inotify_init1 | ||
1280 | |||
1281 | ENTRY(sys_pipe2_wrapper) | ||
1282 | llgtr %r2,%r2 # u32 * | ||
1283 | lgfr %r3,%r3 # int | ||
1284 | jg sys_pipe2 # branch to system call | ||
1285 | |||
1286 | ENTRY(sys_dup3_wrapper) | ||
1287 | llgfr %r2,%r2 # unsigned int | ||
1288 | llgfr %r3,%r3 # unsigned int | ||
1289 | lgfr %r4,%r4 # int | ||
1290 | jg sys_dup3 # branch to system call | ||
1291 | |||
1292 | ENTRY(sys_epoll_create1_wrapper) | ||
1293 | lgfr %r2,%r2 # int | ||
1294 | jg sys_epoll_create1 # branch to system call | ||
1295 | |||
1296 | ENTRY(sys32_readahead_wrapper) | ||
1297 | lgfr %r2,%r2 # int | ||
1298 | llgfr %r3,%r3 # u32 | ||
1299 | llgfr %r4,%r4 # u32 | ||
1300 | lgfr %r5,%r5 # s32 | ||
1301 | jg sys32_readahead # branch to system call | ||
1302 | |||
1303 | ENTRY(sys_tkill_wrapper) | ||
1304 | lgfr %r2,%r2 # pid_t | ||
1305 | lgfr %r3,%r3 # int | ||
1306 | jg sys_tkill # branch to system call | ||
1307 | |||
1308 | ENTRY(sys_tgkill_wrapper) | ||
1309 | lgfr %r2,%r2 # pid_t | ||
1310 | lgfr %r3,%r3 # pid_t | ||
1311 | lgfr %r4,%r4 # int | ||
1312 | jg sys_tgkill # branch to system call | ||
1313 | |||
1314 | ENTRY(compat_sys_keyctl_wrapper) | ||
1315 | llgfr %r2,%r2 # u32 | ||
1316 | llgfr %r3,%r3 # u32 | ||
1317 | llgfr %r4,%r4 # u32 | ||
1318 | llgfr %r5,%r5 # u32 | ||
1319 | llgfr %r6,%r6 # u32 | ||
1320 | jg compat_sys_keyctl # branch to system call | ||
1321 | |||
1322 | ENTRY(sys_perf_event_open_wrapper) | ||
1323 | llgtr %r2,%r2 # const struct perf_event_attr * | ||
1324 | lgfr %r3,%r3 # pid_t | ||
1325 | lgfr %r4,%r4 # int | ||
1326 | lgfr %r5,%r5 # int | ||
1327 | llgfr %r6,%r6 # unsigned long | ||
1328 | jg sys_perf_event_open # branch to system call | ||
1329 | |||
1330 | ENTRY(sys_clone_wrapper) | ||
1331 | llgfr %r2,%r2 # unsigned long | ||
1332 | llgfr %r3,%r3 # unsigned long | ||
1333 | llgtr %r4,%r4 # int * | ||
1334 | llgtr %r5,%r5 # int * | ||
1335 | jg sys_clone # branch to system call | ||
1336 | |||
1337 | ENTRY(sys32_execve_wrapper) | ||
1338 | llgtr %r2,%r2 # char * | ||
1339 | llgtr %r3,%r3 # compat_uptr_t * | ||
1340 | llgtr %r4,%r4 # compat_uptr_t * | ||
1341 | jg compat_sys_execve # branch to system call | ||
1342 | |||
1343 | ENTRY(sys_fanotify_init_wrapper) | ||
1344 | llgfr %r2,%r2 # unsigned int | ||
1345 | llgfr %r3,%r3 # unsigned int | ||
1346 | jg sys_fanotify_init # branch to system call | ||
1347 | |||
1348 | ENTRY(sys_prlimit64_wrapper) | ||
1349 | lgfr %r2,%r2 # pid_t | ||
1350 | llgfr %r3,%r3 # unsigned int | ||
1351 | llgtr %r4,%r4 # const struct rlimit64 __user * | ||
1352 | llgtr %r5,%r5 # struct rlimit64 __user * | ||
1353 | jg sys_prlimit64 # branch to system call | ||
1354 | |||
1355 | ENTRY(sys_name_to_handle_at_wrapper) | ||
1356 | lgfr %r2,%r2 # int | ||
1357 | llgtr %r3,%r3 # const char __user * | ||
1358 | llgtr %r4,%r4 # struct file_handle __user * | ||
1359 | llgtr %r5,%r5 # int __user * | ||
1360 | lgfr %r6,%r6 # int | ||
1361 | jg sys_name_to_handle_at | ||
1362 | |||
1363 | ENTRY(compat_sys_clock_adjtime_wrapper) | ||
1364 | lgfr %r2,%r2 # clockid_t (int) | ||
1365 | llgtr %r3,%r3 # struct compat_timex __user * | ||
1366 | jg compat_sys_clock_adjtime | ||
1367 | |||
1368 | ENTRY(sys_syncfs_wrapper) | ||
1369 | lgfr %r2,%r2 # int | ||
1370 | jg sys_syncfs | ||
1371 | |||
1372 | ENTRY(sys_setns_wrapper) | ||
1373 | lgfr %r2,%r2 # int | ||
1374 | lgfr %r3,%r3 # int | ||
1375 | jg sys_setns | ||
1376 | |||
1377 | ENTRY(compat_sys_process_vm_readv_wrapper) | ||
1378 | lgfr %r2,%r2 # compat_pid_t | ||
1379 | llgtr %r3,%r3 # struct compat_iovec __user * | ||
1380 | llgfr %r4,%r4 # unsigned long | ||
1381 | llgtr %r5,%r5 # struct compat_iovec __user * | ||
1382 | llgfr %r6,%r6 # unsigned long | ||
1383 | llgf %r0,164(%r15) # unsigned long | ||
1384 | stg %r0,160(%r15) | ||
1385 | jg compat_sys_process_vm_readv | ||
1386 | |||
1387 | ENTRY(compat_sys_process_vm_writev_wrapper) | ||
1388 | lgfr %r2,%r2 # compat_pid_t | ||
1389 | llgtr %r3,%r3 # struct compat_iovec __user * | ||
1390 | llgfr %r4,%r4 # unsigned long | ||
1391 | llgtr %r5,%r5 # struct compat_iovec __user * | ||
1392 | llgfr %r6,%r6 # unsigned long | ||
1393 | llgf %r0,164(%r15) # unsigned long | ||
1394 | stg %r0,160(%r15) | ||
1395 | jg compat_sys_process_vm_writev | ||
1396 | |||
1397 | ENTRY(sys_s390_runtime_instr_wrapper) | ||
1398 | lgfr %r2,%r2 # int | ||
1399 | lgfr %r3,%r3 # int | ||
1400 | jg sys_s390_runtime_instr | ||
1401 | |||
1402 | ENTRY(sys_kcmp_wrapper) | ||
1403 | lgfr %r2,%r2 # pid_t | ||
1404 | lgfr %r3,%r3 # pid_t | ||
1405 | lgfr %r4,%r4 # int | ||
1406 | llgfr %r5,%r5 # unsigned long | ||
1407 | llgfr %r6,%r6 # unsigned long | ||
1408 | jg sys_kcmp | ||
1409 | |||
1410 | ENTRY(sys_finit_module_wrapper) | ||
1411 | lgfr %r2,%r2 # int | ||
1412 | llgtr %r3,%r3 # const char __user * | ||
1413 | lgfr %r4,%r4 # int | ||
1414 | jg sys_finit_module | ||
1415 | |||
1416 | ENTRY(sys_sched_setattr_wrapper) | ||
1417 | lgfr %r2,%r2 # pid_t | ||
1418 | llgtr %r3,%r3 # struct sched_attr __user * | ||
1419 | jg sys_sched_setattr | ||
1420 | |||
1421 | ENTRY(sys_sched_getattr_wrapper) | ||
1422 | lgfr %r2,%r2 # pid_t | ||
1423 | llgtr %r3,%r3 # const char __user * | ||
1424 | llgfr %r4,%r4 # unsigned int | ||
1425 | jg sys_sched_getattr | ||
diff --git a/arch/s390/kernel/compat_wrapper.c b/arch/s390/kernel/compat_wrapper.c new file mode 100644 index 000000000000..824c39dfddfc --- /dev/null +++ b/arch/s390/kernel/compat_wrapper.c | |||
@@ -0,0 +1,215 @@ | |||
1 | /* | ||
2 | * Compat sytem call wrappers. | ||
3 | * | ||
4 | * Copyright IBM Corp. 2014 | ||
5 | */ | ||
6 | |||
7 | #include <linux/syscalls.h> | ||
8 | #include <linux/compat.h> | ||
9 | #include "entry.h" | ||
10 | |||
11 | #define COMPAT_SYSCALL_WRAP1(name, ...) \ | ||
12 | COMPAT_SYSCALL_WRAPx(1, _##name, __VA_ARGS__) | ||
13 | #define COMPAT_SYSCALL_WRAP2(name, ...) \ | ||
14 | COMPAT_SYSCALL_WRAPx(2, _##name, __VA_ARGS__) | ||
15 | #define COMPAT_SYSCALL_WRAP3(name, ...) \ | ||
16 | COMPAT_SYSCALL_WRAPx(3, _##name, __VA_ARGS__) | ||
17 | #define COMPAT_SYSCALL_WRAP4(name, ...) \ | ||
18 | COMPAT_SYSCALL_WRAPx(4, _##name, __VA_ARGS__) | ||
19 | #define COMPAT_SYSCALL_WRAP5(name, ...) \ | ||
20 | COMPAT_SYSCALL_WRAPx(5, _##name, __VA_ARGS__) | ||
21 | #define COMPAT_SYSCALL_WRAP6(name, ...) \ | ||
22 | COMPAT_SYSCALL_WRAPx(6, _##name, __VA_ARGS__) | ||
23 | |||
24 | #define __SC_COMPAT_TYPE(t, a) \ | ||
25 | __typeof(__builtin_choose_expr(sizeof(t) > 4, 0L, (t)0)) a | ||
26 | |||
27 | #define __SC_COMPAT_CAST(t, a) \ | ||
28 | ({ \ | ||
29 | long __ReS = a; \ | ||
30 | \ | ||
31 | BUILD_BUG_ON((sizeof(t) > 4) && !__TYPE_IS_L(t) && \ | ||
32 | !__TYPE_IS_UL(t) && !__TYPE_IS_PTR(t)); \ | ||
33 | if (__TYPE_IS_L(t)) \ | ||
34 | __ReS = (s32)a; \ | ||
35 | if (__TYPE_IS_UL(t)) \ | ||
36 | __ReS = (u32)a; \ | ||
37 | if (__TYPE_IS_PTR(t)) \ | ||
38 | __ReS = a & 0x7fffffff; \ | ||
39 | (t)__ReS; \ | ||
40 | }) | ||
41 | |||
42 | /* | ||
43 | * The COMPAT_SYSCALL_WRAP macro generates system call wrappers to be used by | ||
44 | * compat tasks. These wrappers will only be used for system calls where only | ||
45 | * the system call arguments need sign or zero extension or zeroing of the upper | ||
46 | * 33 bits of pointers. | ||
47 | * Note: since the wrapper function will afterwards call a system call which | ||
48 | * again performs zero and sign extension for all system call arguments with | ||
49 | * a size of less than eight bytes, these compat wrappers only touch those | ||
50 | * system call arguments with a size of eight bytes ((unsigned) long and | ||
51 | * pointers). Zero and sign extension for e.g. int parameters will be done by | ||
52 | * the regular system call wrappers. | ||
53 | */ | ||
54 | #define COMPAT_SYSCALL_WRAPx(x, name, ...) \ | ||
55 | asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)); \ | ||
56 | asmlinkage long compat_sys##name(__MAP(x,__SC_COMPAT_TYPE,__VA_ARGS__));\ | ||
57 | asmlinkage long compat_sys##name(__MAP(x,__SC_COMPAT_TYPE,__VA_ARGS__)) \ | ||
58 | { \ | ||
59 | return sys##name(__MAP(x,__SC_COMPAT_CAST,__VA_ARGS__)); \ | ||
60 | } | ||
61 | |||
62 | COMPAT_SYSCALL_WRAP1(exit, int, error_code); | ||
63 | COMPAT_SYSCALL_WRAP1(close, unsigned int, fd); | ||
64 | COMPAT_SYSCALL_WRAP2(creat, const char __user *, pathname, umode_t, mode); | ||
65 | COMPAT_SYSCALL_WRAP2(link, const char __user *, oldname, const char __user *, newname); | ||
66 | COMPAT_SYSCALL_WRAP1(unlink, const char __user *, pathname); | ||
67 | COMPAT_SYSCALL_WRAP1(chdir, const char __user *, filename); | ||
68 | COMPAT_SYSCALL_WRAP3(mknod, const char __user *, filename, umode_t, mode, unsigned, dev); | ||
69 | COMPAT_SYSCALL_WRAP2(chmod, const char __user *, filename, umode_t, mode); | ||
70 | COMPAT_SYSCALL_WRAP1(oldumount, char __user *, name); | ||
71 | COMPAT_SYSCALL_WRAP1(alarm, unsigned int, seconds); | ||
72 | COMPAT_SYSCALL_WRAP2(access, const char __user *, filename, int, mode); | ||
73 | COMPAT_SYSCALL_WRAP1(nice, int, increment); | ||
74 | COMPAT_SYSCALL_WRAP2(kill, int, pid, int, sig); | ||
75 | COMPAT_SYSCALL_WRAP2(rename, const char __user *, oldname, const char __user *, newname); | ||
76 | COMPAT_SYSCALL_WRAP2(mkdir, const char __user *, pathname, umode_t, mode); | ||
77 | COMPAT_SYSCALL_WRAP1(rmdir, const char __user *, pathname); | ||
78 | COMPAT_SYSCALL_WRAP1(dup, unsigned int, fildes); | ||
79 | COMPAT_SYSCALL_WRAP1(pipe, int __user *, fildes); | ||
80 | COMPAT_SYSCALL_WRAP1(brk, unsigned long, brk); | ||
81 | COMPAT_SYSCALL_WRAP2(signal, int, sig, __sighandler_t, handler); | ||
82 | COMPAT_SYSCALL_WRAP1(acct, const char __user *, name); | ||
83 | COMPAT_SYSCALL_WRAP2(umount, char __user *, name, int, flags); | ||
84 | COMPAT_SYSCALL_WRAP2(setpgid, pid_t, pid, pid_t, pgid); | ||
85 | COMPAT_SYSCALL_WRAP1(umask, int, mask); | ||
86 | COMPAT_SYSCALL_WRAP1(chroot, const char __user *, filename); | ||
87 | COMPAT_SYSCALL_WRAP2(dup2, unsigned int, oldfd, unsigned int, newfd); | ||
88 | COMPAT_SYSCALL_WRAP3(sigsuspend, int, unused1, int, unused2, old_sigset_t, mask); | ||
89 | COMPAT_SYSCALL_WRAP2(sethostname, char __user *, name, int, len); | ||
90 | COMPAT_SYSCALL_WRAP2(symlink, const char __user *, old, const char __user *, new); | ||
91 | COMPAT_SYSCALL_WRAP3(readlink, const char __user *, path, char __user *, buf, int, bufsiz); | ||
92 | COMPAT_SYSCALL_WRAP1(uselib, const char __user *, library); | ||
93 | COMPAT_SYSCALL_WRAP2(swapon, const char __user *, specialfile, int, swap_flags); | ||
94 | COMPAT_SYSCALL_WRAP4(reboot, int, magic1, int, magic2, unsigned int, cmd, void __user *, arg); | ||
95 | COMPAT_SYSCALL_WRAP2(munmap, unsigned long, addr, size_t, len); | ||
96 | COMPAT_SYSCALL_WRAP2(fchmod, unsigned int, fd, umode_t, mode); | ||
97 | COMPAT_SYSCALL_WRAP2(getpriority, int, which, int, who); | ||
98 | COMPAT_SYSCALL_WRAP3(setpriority, int, which, int, who, int, niceval); | ||
99 | COMPAT_SYSCALL_WRAP3(syslog, int, type, char __user *, buf, int, len); | ||
100 | COMPAT_SYSCALL_WRAP1(swapoff, const char __user *, specialfile); | ||
101 | COMPAT_SYSCALL_WRAP1(fsync, unsigned int, fd); | ||
102 | COMPAT_SYSCALL_WRAP2(setdomainname, char __user *, name, int, len); | ||
103 | COMPAT_SYSCALL_WRAP1(newuname, struct new_utsname __user *, name); | ||
104 | COMPAT_SYSCALL_WRAP3(mprotect, unsigned long, start, size_t, len, unsigned long, prot); | ||
105 | COMPAT_SYSCALL_WRAP3(init_module, void __user *, umod, unsigned long, len, const char __user *, uargs); | ||
106 | COMPAT_SYSCALL_WRAP2(delete_module, const char __user *, name_user, unsigned int, flags); | ||
107 | COMPAT_SYSCALL_WRAP4(quotactl, unsigned int, cmd, const char __user *, special, qid_t, id, void __user *, addr); | ||
108 | COMPAT_SYSCALL_WRAP1(getpgid, pid_t, pid); | ||
109 | COMPAT_SYSCALL_WRAP1(fchdir, unsigned int, fd); | ||
110 | COMPAT_SYSCALL_WRAP2(bdflush, int, func, long, data); | ||
111 | COMPAT_SYSCALL_WRAP3(sysfs, int, option, unsigned long, arg1, unsigned long, arg2); | ||
112 | COMPAT_SYSCALL_WRAP1(s390_personality, unsigned int, personality); | ||
113 | COMPAT_SYSCALL_WRAP5(llseek, unsigned int, fd, unsigned long, high, unsigned long, low, loff_t __user *, result, unsigned int, whence); | ||
114 | COMPAT_SYSCALL_WRAP2(flock, unsigned int, fd, unsigned int, cmd); | ||
115 | COMPAT_SYSCALL_WRAP3(msync, unsigned long, start, size_t, len, int, flags); | ||
116 | COMPAT_SYSCALL_WRAP1(getsid, pid_t, pid); | ||
117 | COMPAT_SYSCALL_WRAP1(fdatasync, unsigned int, fd); | ||
118 | COMPAT_SYSCALL_WRAP2(mlock, unsigned long, start, size_t, len); | ||
119 | COMPAT_SYSCALL_WRAP2(munlock, unsigned long, start, size_t, len); | ||
120 | COMPAT_SYSCALL_WRAP1(mlockall, int, flags); | ||
121 | COMPAT_SYSCALL_WRAP2(sched_setparam, pid_t, pid, struct sched_param __user *, param); | ||
122 | COMPAT_SYSCALL_WRAP2(sched_getparam, pid_t, pid, struct sched_param __user *, param); | ||
123 | COMPAT_SYSCALL_WRAP3(sched_setscheduler, pid_t, pid, int, policy, struct sched_param __user *, param); | ||
124 | COMPAT_SYSCALL_WRAP1(sched_getscheduler, pid_t, pid); | ||
125 | COMPAT_SYSCALL_WRAP1(sched_get_priority_max, int, policy); | ||
126 | COMPAT_SYSCALL_WRAP1(sched_get_priority_min, int, policy); | ||
127 | COMPAT_SYSCALL_WRAP5(mremap, unsigned long, addr, unsigned long, old_len, unsigned long, new_len, unsigned long, flags, unsigned long, new_addr); | ||
128 | COMPAT_SYSCALL_WRAP3(poll, struct pollfd __user *, ufds, unsigned int, nfds, int, timeout); | ||
129 | COMPAT_SYSCALL_WRAP5(prctl, int, option, unsigned long, arg2, unsigned long, arg3, unsigned long, arg4, unsigned long, arg5); | ||
130 | COMPAT_SYSCALL_WRAP2(getcwd, char __user *, buf, unsigned long, size); | ||
131 | COMPAT_SYSCALL_WRAP2(capget, cap_user_header_t, header, cap_user_data_t, dataptr); | ||
132 | COMPAT_SYSCALL_WRAP2(capset, cap_user_header_t, header, const cap_user_data_t, data); | ||
133 | COMPAT_SYSCALL_WRAP3(lchown, const char __user *, filename, uid_t, user, gid_t, group); | ||
134 | COMPAT_SYSCALL_WRAP2(setreuid, uid_t, ruid, uid_t, euid); | ||
135 | COMPAT_SYSCALL_WRAP2(setregid, gid_t, rgid, gid_t, egid); | ||
136 | COMPAT_SYSCALL_WRAP2(getgroups, int, gidsetsize, gid_t __user *, grouplist); | ||
137 | COMPAT_SYSCALL_WRAP2(setgroups, int, gidsetsize, gid_t __user *, grouplist); | ||
138 | COMPAT_SYSCALL_WRAP3(fchown, unsigned int, fd, uid_t, user, gid_t, group); | ||
139 | COMPAT_SYSCALL_WRAP3(setresuid, uid_t, ruid, uid_t, euid, uid_t, suid); | ||
140 | COMPAT_SYSCALL_WRAP3(getresuid, uid_t __user *, ruid, uid_t __user *, euid, uid_t __user *, suid); | ||
141 | COMPAT_SYSCALL_WRAP3(setresgid, gid_t, rgid, gid_t, egid, gid_t, sgid); | ||
142 | COMPAT_SYSCALL_WRAP3(getresgid, gid_t __user *, rgid, gid_t __user *, egid, gid_t __user *, sgid); | ||
143 | COMPAT_SYSCALL_WRAP3(chown, const char __user *, filename, uid_t, user, gid_t, group); | ||
144 | COMPAT_SYSCALL_WRAP1(setuid, uid_t, uid); | ||
145 | COMPAT_SYSCALL_WRAP1(setgid, gid_t, gid); | ||
146 | COMPAT_SYSCALL_WRAP1(setfsuid, uid_t, uid); | ||
147 | COMPAT_SYSCALL_WRAP1(setfsgid, gid_t, gid); | ||
148 | COMPAT_SYSCALL_WRAP2(pivot_root, const char __user *, new_root, const char __user *, put_old); | ||
149 | COMPAT_SYSCALL_WRAP3(mincore, unsigned long, start, size_t, len, unsigned char __user *, vec); | ||
150 | COMPAT_SYSCALL_WRAP3(madvise, unsigned long, start, size_t, len, int, behavior); | ||
151 | COMPAT_SYSCALL_WRAP5(setxattr, const char __user *, path, const char __user *, name, const void __user *, value, size_t, size, int, flags); | ||
152 | COMPAT_SYSCALL_WRAP5(lsetxattr, const char __user *, path, const char __user *, name, const void __user *, value, size_t, size, int, flags); | ||
153 | COMPAT_SYSCALL_WRAP5(fsetxattr, int, fd, const char __user *, name, const void __user *, value, size_t, size, int, flags); | ||
154 | COMPAT_SYSCALL_WRAP3(getdents64, unsigned int, fd, struct linux_dirent64 __user *, dirent, unsigned int, count); | ||
155 | COMPAT_SYSCALL_WRAP4(getxattr, const char __user *, path, const char __user *, name, void __user *, value, size_t, size); | ||
156 | COMPAT_SYSCALL_WRAP4(lgetxattr, const char __user *, path, const char __user *, name, void __user *, value, size_t, size); | ||
157 | COMPAT_SYSCALL_WRAP4(fgetxattr, int, fd, const char __user *, name, void __user *, value, size_t, size); | ||
158 | COMPAT_SYSCALL_WRAP3(listxattr, const char __user *, path, char __user *, list, size_t, size); | ||
159 | COMPAT_SYSCALL_WRAP3(llistxattr, const char __user *, path, char __user *, list, size_t, size); | ||
160 | COMPAT_SYSCALL_WRAP3(flistxattr, int, fd, char __user *, list, size_t, size); | ||
161 | COMPAT_SYSCALL_WRAP2(removexattr, const char __user *, path, const char __user *, name); | ||
162 | COMPAT_SYSCALL_WRAP2(lremovexattr, const char __user *, path, const char __user *, name); | ||
163 | COMPAT_SYSCALL_WRAP2(fremovexattr, int, fd, const char __user *, name); | ||
164 | COMPAT_SYSCALL_WRAP1(exit_group, int, error_code); | ||
165 | COMPAT_SYSCALL_WRAP1(set_tid_address, int __user *, tidptr); | ||
166 | COMPAT_SYSCALL_WRAP1(epoll_create, int, size); | ||
167 | COMPAT_SYSCALL_WRAP4(epoll_ctl, int, epfd, int, op, int, fd, struct epoll_event __user *, event); | ||
168 | COMPAT_SYSCALL_WRAP4(epoll_wait, int, epfd, struct epoll_event __user *, events, int, maxevents, int, timeout); | ||
169 | COMPAT_SYSCALL_WRAP1(timer_getoverrun, timer_t, timer_id); | ||
170 | COMPAT_SYSCALL_WRAP1(timer_delete, compat_timer_t, compat_timer_id); | ||
171 | COMPAT_SYSCALL_WRAP1(io_destroy, aio_context_t, ctx); | ||
172 | COMPAT_SYSCALL_WRAP3(io_cancel, aio_context_t, ctx_id, struct iocb __user *, iocb, struct io_event __user *, result); | ||
173 | COMPAT_SYSCALL_WRAP1(mq_unlink, const char __user *, name); | ||
174 | COMPAT_SYSCALL_WRAP5(add_key, const char __user *, tp, const char __user *, dsc, const void __user *, pld, size_t, len, key_serial_t, id); | ||
175 | COMPAT_SYSCALL_WRAP4(request_key, const char __user *, tp, const char __user *, dsc, const char __user *, info, key_serial_t, id); | ||
176 | COMPAT_SYSCALL_WRAP5(remap_file_pages, unsigned long, start, unsigned long, size, unsigned long, prot, unsigned long, pgoff, unsigned long, flags); | ||
177 | COMPAT_SYSCALL_WRAP3(ioprio_set, int, which, int, who, int, ioprio); | ||
178 | COMPAT_SYSCALL_WRAP2(ioprio_get, int, which, int, who); | ||
179 | COMPAT_SYSCALL_WRAP3(inotify_add_watch, int, fd, const char __user *, path, u32, mask); | ||
180 | COMPAT_SYSCALL_WRAP2(inotify_rm_watch, int, fd, __s32, wd); | ||
181 | COMPAT_SYSCALL_WRAP3(mkdirat, int, dfd, const char __user *, pathname, umode_t, mode); | ||
182 | COMPAT_SYSCALL_WRAP4(mknodat, int, dfd, const char __user *, filename, umode_t, mode, unsigned, dev); | ||
183 | COMPAT_SYSCALL_WRAP5(fchownat, int, dfd, const char __user *, filename, uid_t, user, gid_t, group, int, flag); | ||
184 | COMPAT_SYSCALL_WRAP3(unlinkat, int, dfd, const char __user *, pathname, int, flag); | ||
185 | COMPAT_SYSCALL_WRAP4(renameat, int, olddfd, const char __user *, oldname, int, newdfd, const char __user *, newname); | ||
186 | COMPAT_SYSCALL_WRAP5(linkat, int, olddfd, const char __user *, oldname, int, newdfd, const char __user *, newname, int, flags); | ||
187 | COMPAT_SYSCALL_WRAP3(symlinkat, const char __user *, oldname, int, newdfd, const char __user *, newname); | ||
188 | COMPAT_SYSCALL_WRAP4(readlinkat, int, dfd, const char __user *, path, char __user *, buf, int, bufsiz); | ||
189 | COMPAT_SYSCALL_WRAP3(fchmodat, int, dfd, const char __user *, filename, umode_t, mode); | ||
190 | COMPAT_SYSCALL_WRAP3(faccessat, int, dfd, const char __user *, filename, int, mode); | ||
191 | COMPAT_SYSCALL_WRAP1(unshare, unsigned long, unshare_flags); | ||
192 | COMPAT_SYSCALL_WRAP6(splice, int, fd_in, loff_t __user *, off_in, int, fd_out, loff_t __user *, off_out, size_t, len, unsigned int, flags); | ||
193 | COMPAT_SYSCALL_WRAP4(tee, int, fdin, int, fdout, size_t, len, unsigned int, flags); | ||
194 | COMPAT_SYSCALL_WRAP3(getcpu, unsigned __user *, cpu, unsigned __user *, node, struct getcpu_cache __user *, cache); | ||
195 | COMPAT_SYSCALL_WRAP1(eventfd, unsigned int, count); | ||
196 | COMPAT_SYSCALL_WRAP2(timerfd_create, int, clockid, int, flags); | ||
197 | COMPAT_SYSCALL_WRAP2(eventfd2, unsigned int, count, int, flags); | ||
198 | COMPAT_SYSCALL_WRAP1(inotify_init1, int, flags); | ||
199 | COMPAT_SYSCALL_WRAP2(pipe2, int __user *, fildes, int, flags); | ||
200 | COMPAT_SYSCALL_WRAP3(dup3, unsigned int, oldfd, unsigned int, newfd, int, flags); | ||
201 | COMPAT_SYSCALL_WRAP1(epoll_create1, int, flags); | ||
202 | COMPAT_SYSCALL_WRAP2(tkill, int, pid, int, sig); | ||
203 | COMPAT_SYSCALL_WRAP3(tgkill, int, tgid, int, pid, int, sig); | ||
204 | COMPAT_SYSCALL_WRAP5(perf_event_open, struct perf_event_attr __user *, attr_uptr, pid_t, pid, int, cpu, int, group_fd, unsigned long, flags); | ||
205 | COMPAT_SYSCALL_WRAP5(clone, unsigned long, newsp, unsigned long, clone_flags, int __user *, parent_tidptr, int __user *, child_tidptr, int, tls_val); | ||
206 | COMPAT_SYSCALL_WRAP2(fanotify_init, unsigned int, flags, unsigned int, event_f_flags); | ||
207 | COMPAT_SYSCALL_WRAP4(prlimit64, pid_t, pid, unsigned int, resource, const struct rlimit64 __user *, new_rlim, struct rlimit64 __user *, old_rlim); | ||
208 | COMPAT_SYSCALL_WRAP5(name_to_handle_at, int, dfd, const char __user *, name, struct file_handle __user *, handle, int __user *, mnt_id, int, flag); | ||
209 | COMPAT_SYSCALL_WRAP1(syncfs, int, fd); | ||
210 | COMPAT_SYSCALL_WRAP2(setns, int, fd, int, nstype); | ||
211 | COMPAT_SYSCALL_WRAP2(s390_runtime_instr, int, command, int, signum); | ||
212 | COMPAT_SYSCALL_WRAP5(kcmp, pid_t, pid1, pid_t, pid2, int, type, unsigned long, idx1, unsigned long, idx2); | ||
213 | COMPAT_SYSCALL_WRAP3(finit_module, int, fd, const char __user *, uargs, int, flags); | ||
214 | COMPAT_SYSCALL_WRAP3(sched_setattr, pid_t, pid, struct sched_attr __user *, attr, unsigned int, flags); | ||
215 | COMPAT_SYSCALL_WRAP4(sched_getattr, pid_t, pid, struct sched_attr __user *, attr, unsigned int, size, unsigned int, flags); | ||
diff --git a/arch/s390/kernel/entry.h b/arch/s390/kernel/entry.h index cb533f78c09e..6ac78192455f 100644 --- a/arch/s390/kernel/entry.h +++ b/arch/s390/kernel/entry.h | |||
@@ -67,9 +67,7 @@ struct s390_mmap_arg_struct; | |||
67 | struct fadvise64_64_args; | 67 | struct fadvise64_64_args; |
68 | struct old_sigaction; | 68 | struct old_sigaction; |
69 | 69 | ||
70 | long sys_sigreturn(void); | 70 | long sys_s390_personality(unsigned int personality); |
71 | long sys_rt_sigreturn(void); | 71 | long sys_s390_runtime_instr(int command, int signum); |
72 | long sys32_sigreturn(void); | ||
73 | long sys32_rt_sigreturn(void); | ||
74 | 72 | ||
75 | #endif /* _ENTRY_H */ | 73 | #endif /* _ENTRY_H */ |
diff --git a/arch/s390/kernel/syscalls.S b/arch/s390/kernel/syscalls.S index 143992152ec9..542ef488bac1 100644 --- a/arch/s390/kernel/syscalls.S +++ b/arch/s390/kernel/syscalls.S | |||
@@ -9,349 +9,349 @@ | |||
9 | #define NI_SYSCALL SYSCALL(sys_ni_syscall,sys_ni_syscall,sys_ni_syscall) | 9 | #define NI_SYSCALL SYSCALL(sys_ni_syscall,sys_ni_syscall,sys_ni_syscall) |
10 | 10 | ||
11 | NI_SYSCALL /* 0 */ | 11 | NI_SYSCALL /* 0 */ |
12 | SYSCALL(sys_exit,sys_exit,sys32_exit_wrapper) | 12 | SYSCALL(sys_exit,sys_exit,compat_sys_exit) |
13 | SYSCALL(sys_fork,sys_fork,sys_fork) | 13 | SYSCALL(sys_fork,sys_fork,sys_fork) |
14 | SYSCALL(sys_read,sys_read,sys32_read_wrapper) | 14 | SYSCALL(sys_read,sys_read,compat_sys_s390_read) |
15 | SYSCALL(sys_write,sys_write,sys32_write_wrapper) | 15 | SYSCALL(sys_write,sys_write,compat_sys_s390_write) |
16 | SYSCALL(sys_open,sys_open,compat_sys_open) /* 5 */ | 16 | SYSCALL(sys_open,sys_open,compat_sys_open) /* 5 */ |
17 | SYSCALL(sys_close,sys_close,sys32_close_wrapper) | 17 | SYSCALL(sys_close,sys_close,compat_sys_close) |
18 | SYSCALL(sys_restart_syscall,sys_restart_syscall,sys_restart_syscall) | 18 | SYSCALL(sys_restart_syscall,sys_restart_syscall,sys_restart_syscall) |
19 | SYSCALL(sys_creat,sys_creat,sys32_creat_wrapper) | 19 | SYSCALL(sys_creat,sys_creat,compat_sys_creat) |
20 | SYSCALL(sys_link,sys_link,sys32_link_wrapper) | 20 | SYSCALL(sys_link,sys_link,compat_sys_link) |
21 | SYSCALL(sys_unlink,sys_unlink,sys32_unlink_wrapper) /* 10 */ | 21 | SYSCALL(sys_unlink,sys_unlink,compat_sys_unlink) /* 10 */ |
22 | SYSCALL(sys_execve,sys_execve,sys32_execve_wrapper) | 22 | SYSCALL(sys_execve,sys_execve,compat_sys_execve) |
23 | SYSCALL(sys_chdir,sys_chdir,sys32_chdir_wrapper) | 23 | SYSCALL(sys_chdir,sys_chdir,compat_sys_chdir) |
24 | SYSCALL(sys_time,sys_ni_syscall,sys32_time_wrapper) /* old time syscall */ | 24 | SYSCALL(sys_time,sys_ni_syscall,compat_sys_time) /* old time syscall */ |
25 | SYSCALL(sys_mknod,sys_mknod,sys32_mknod_wrapper) | 25 | SYSCALL(sys_mknod,sys_mknod,compat_sys_mknod) |
26 | SYSCALL(sys_chmod,sys_chmod,sys32_chmod_wrapper) /* 15 */ | 26 | SYSCALL(sys_chmod,sys_chmod,compat_sys_chmod) /* 15 */ |
27 | SYSCALL(sys_lchown16,sys_ni_syscall,sys32_lchown16_wrapper) /* old lchown16 syscall*/ | 27 | SYSCALL(sys_lchown16,sys_ni_syscall,compat_sys_s390_lchown16) /* old lchown16 syscall*/ |
28 | NI_SYSCALL /* old break syscall holder */ | 28 | NI_SYSCALL /* old break syscall holder */ |
29 | NI_SYSCALL /* old stat syscall holder */ | 29 | NI_SYSCALL /* old stat syscall holder */ |
30 | SYSCALL(sys_lseek,sys_lseek,compat_sys_lseek) | 30 | SYSCALL(sys_lseek,sys_lseek,compat_sys_lseek) |
31 | SYSCALL(sys_getpid,sys_getpid,sys_getpid) /* 20 */ | 31 | SYSCALL(sys_getpid,sys_getpid,sys_getpid) /* 20 */ |
32 | SYSCALL(sys_mount,sys_mount,sys32_mount_wrapper) | 32 | SYSCALL(sys_mount,sys_mount,compat_sys_mount) |
33 | SYSCALL(sys_oldumount,sys_oldumount,sys32_oldumount_wrapper) | 33 | SYSCALL(sys_oldumount,sys_oldumount,compat_sys_oldumount) |
34 | SYSCALL(sys_setuid16,sys_ni_syscall,sys32_setuid16_wrapper) /* old setuid16 syscall*/ | 34 | SYSCALL(sys_setuid16,sys_ni_syscall,compat_sys_s390_setuid16) /* old setuid16 syscall*/ |
35 | SYSCALL(sys_getuid16,sys_ni_syscall,sys32_getuid16) /* old getuid16 syscall*/ | 35 | SYSCALL(sys_getuid16,sys_ni_syscall,compat_sys_s390_getuid16) /* old getuid16 syscall*/ |
36 | SYSCALL(sys_stime,sys_ni_syscall,sys32_stime_wrapper) /* 25 old stime syscall */ | 36 | SYSCALL(sys_stime,sys_ni_syscall,compat_sys_stime) /* 25 old stime syscall */ |
37 | SYSCALL(sys_ptrace,sys_ptrace,sys32_ptrace_wrapper) | 37 | SYSCALL(sys_ptrace,sys_ptrace,compat_sys_ptrace) |
38 | SYSCALL(sys_alarm,sys_alarm,sys32_alarm_wrapper) | 38 | SYSCALL(sys_alarm,sys_alarm,compat_sys_alarm) |
39 | NI_SYSCALL /* old fstat syscall */ | 39 | NI_SYSCALL /* old fstat syscall */ |
40 | SYSCALL(sys_pause,sys_pause,sys_pause) | 40 | SYSCALL(sys_pause,sys_pause,sys_pause) |
41 | SYSCALL(sys_utime,sys_utime,compat_sys_utime_wrapper) /* 30 */ | 41 | SYSCALL(sys_utime,sys_utime,compat_sys_utime) /* 30 */ |
42 | NI_SYSCALL /* old stty syscall */ | 42 | NI_SYSCALL /* old stty syscall */ |
43 | NI_SYSCALL /* old gtty syscall */ | 43 | NI_SYSCALL /* old gtty syscall */ |
44 | SYSCALL(sys_access,sys_access,sys32_access_wrapper) | 44 | SYSCALL(sys_access,sys_access,compat_sys_access) |
45 | SYSCALL(sys_nice,sys_nice,sys32_nice_wrapper) | 45 | SYSCALL(sys_nice,sys_nice,compat_sys_nice) |
46 | NI_SYSCALL /* 35 old ftime syscall */ | 46 | NI_SYSCALL /* 35 old ftime syscall */ |
47 | SYSCALL(sys_sync,sys_sync,sys_sync) | 47 | SYSCALL(sys_sync,sys_sync,sys_sync) |
48 | SYSCALL(sys_kill,sys_kill,sys32_kill_wrapper) | 48 | SYSCALL(sys_kill,sys_kill,compat_sys_kill) |
49 | SYSCALL(sys_rename,sys_rename,sys32_rename_wrapper) | 49 | SYSCALL(sys_rename,sys_rename,compat_sys_rename) |
50 | SYSCALL(sys_mkdir,sys_mkdir,sys32_mkdir_wrapper) | 50 | SYSCALL(sys_mkdir,sys_mkdir,compat_sys_mkdir) |
51 | SYSCALL(sys_rmdir,sys_rmdir,sys32_rmdir_wrapper) /* 40 */ | 51 | SYSCALL(sys_rmdir,sys_rmdir,compat_sys_rmdir) /* 40 */ |
52 | SYSCALL(sys_dup,sys_dup,sys32_dup_wrapper) | 52 | SYSCALL(sys_dup,sys_dup,compat_sys_dup) |
53 | SYSCALL(sys_pipe,sys_pipe,sys32_pipe_wrapper) | 53 | SYSCALL(sys_pipe,sys_pipe,compat_sys_pipe) |
54 | SYSCALL(sys_times,sys_times,compat_sys_times_wrapper) | 54 | SYSCALL(sys_times,sys_times,compat_sys_times) |
55 | NI_SYSCALL /* old prof syscall */ | 55 | NI_SYSCALL /* old prof syscall */ |
56 | SYSCALL(sys_brk,sys_brk,sys32_brk_wrapper) /* 45 */ | 56 | SYSCALL(sys_brk,sys_brk,compat_sys_brk) /* 45 */ |
57 | SYSCALL(sys_setgid16,sys_ni_syscall,sys32_setgid16_wrapper) /* old setgid16 syscall*/ | 57 | SYSCALL(sys_setgid16,sys_ni_syscall,compat_sys_s390_setgid16) /* old setgid16 syscall*/ |
58 | SYSCALL(sys_getgid16,sys_ni_syscall,sys32_getgid16) /* old getgid16 syscall*/ | 58 | SYSCALL(sys_getgid16,sys_ni_syscall,compat_sys_s390_getgid16) /* old getgid16 syscall*/ |
59 | SYSCALL(sys_signal,sys_signal,sys32_signal_wrapper) | 59 | SYSCALL(sys_signal,sys_signal,compat_sys_signal) |
60 | SYSCALL(sys_geteuid16,sys_ni_syscall,sys32_geteuid16) /* old geteuid16 syscall */ | 60 | SYSCALL(sys_geteuid16,sys_ni_syscall,compat_sys_s390_geteuid16) /* old geteuid16 syscall */ |
61 | SYSCALL(sys_getegid16,sys_ni_syscall,sys32_getegid16) /* 50 old getegid16 syscall */ | 61 | SYSCALL(sys_getegid16,sys_ni_syscall,compat_sys_s390_getegid16) /* 50 old getegid16 syscall */ |
62 | SYSCALL(sys_acct,sys_acct,sys32_acct_wrapper) | 62 | SYSCALL(sys_acct,sys_acct,compat_sys_acct) |
63 | SYSCALL(sys_umount,sys_umount,sys32_umount_wrapper) | 63 | SYSCALL(sys_umount,sys_umount,compat_sys_umount) |
64 | NI_SYSCALL /* old lock syscall */ | 64 | NI_SYSCALL /* old lock syscall */ |
65 | SYSCALL(sys_ioctl,sys_ioctl,compat_sys_ioctl_wrapper) | 65 | SYSCALL(sys_ioctl,sys_ioctl,compat_sys_ioctl) |
66 | SYSCALL(sys_fcntl,sys_fcntl,compat_sys_fcntl_wrapper) /* 55 */ | 66 | SYSCALL(sys_fcntl,sys_fcntl,compat_sys_fcntl) /* 55 */ |
67 | NI_SYSCALL /* intel mpx syscall */ | 67 | NI_SYSCALL /* intel mpx syscall */ |
68 | SYSCALL(sys_setpgid,sys_setpgid,sys32_setpgid_wrapper) | 68 | SYSCALL(sys_setpgid,sys_setpgid,compat_sys_setpgid) |
69 | NI_SYSCALL /* old ulimit syscall */ | 69 | NI_SYSCALL /* old ulimit syscall */ |
70 | NI_SYSCALL /* old uname syscall */ | 70 | NI_SYSCALL /* old uname syscall */ |
71 | SYSCALL(sys_umask,sys_umask,sys32_umask_wrapper) /* 60 */ | 71 | SYSCALL(sys_umask,sys_umask,compat_sys_umask) /* 60 */ |
72 | SYSCALL(sys_chroot,sys_chroot,sys32_chroot_wrapper) | 72 | SYSCALL(sys_chroot,sys_chroot,compat_sys_chroot) |
73 | SYSCALL(sys_ustat,sys_ustat,sys32_ustat_wrapper) | 73 | SYSCALL(sys_ustat,sys_ustat,compat_sys_ustat) |
74 | SYSCALL(sys_dup2,sys_dup2,sys32_dup2_wrapper) | 74 | SYSCALL(sys_dup2,sys_dup2,compat_sys_dup2) |
75 | SYSCALL(sys_getppid,sys_getppid,sys_getppid) | 75 | SYSCALL(sys_getppid,sys_getppid,sys_getppid) |
76 | SYSCALL(sys_getpgrp,sys_getpgrp,sys_getpgrp) /* 65 */ | 76 | SYSCALL(sys_getpgrp,sys_getpgrp,sys_getpgrp) /* 65 */ |
77 | SYSCALL(sys_setsid,sys_setsid,sys_setsid) | 77 | SYSCALL(sys_setsid,sys_setsid,sys_setsid) |
78 | SYSCALL(sys_sigaction,sys_sigaction,compat_sys_sigaction) | 78 | SYSCALL(sys_sigaction,sys_sigaction,compat_sys_sigaction) |
79 | NI_SYSCALL /* old sgetmask syscall*/ | 79 | NI_SYSCALL /* old sgetmask syscall*/ |
80 | NI_SYSCALL /* old ssetmask syscall*/ | 80 | NI_SYSCALL /* old ssetmask syscall*/ |
81 | SYSCALL(sys_setreuid16,sys_ni_syscall,sys32_setreuid16_wrapper) /* old setreuid16 syscall */ | 81 | SYSCALL(sys_setreuid16,sys_ni_syscall,compat_sys_s390_setreuid16) /* old setreuid16 syscall */ |
82 | SYSCALL(sys_setregid16,sys_ni_syscall,sys32_setregid16_wrapper) /* old setregid16 syscall */ | 82 | SYSCALL(sys_setregid16,sys_ni_syscall,compat_sys_s390_setregid16) /* old setregid16 syscall */ |
83 | SYSCALL(sys_sigsuspend,sys_sigsuspend,sys_sigsuspend_wrapper) | 83 | SYSCALL(sys_sigsuspend,sys_sigsuspend,compat_sys_sigsuspend) |
84 | SYSCALL(sys_sigpending,sys_sigpending,compat_sys_sigpending_wrapper) | 84 | SYSCALL(sys_sigpending,sys_sigpending,compat_sys_sigpending) |
85 | SYSCALL(sys_sethostname,sys_sethostname,sys32_sethostname_wrapper) | 85 | SYSCALL(sys_sethostname,sys_sethostname,compat_sys_sethostname) |
86 | SYSCALL(sys_setrlimit,sys_setrlimit,compat_sys_setrlimit_wrapper) /* 75 */ | 86 | SYSCALL(sys_setrlimit,sys_setrlimit,compat_sys_setrlimit) /* 75 */ |
87 | SYSCALL(sys_old_getrlimit,sys_getrlimit,compat_sys_old_getrlimit_wrapper) | 87 | SYSCALL(sys_old_getrlimit,sys_getrlimit,compat_sys_old_getrlimit) |
88 | SYSCALL(sys_getrusage,sys_getrusage,compat_sys_getrusage) | 88 | SYSCALL(sys_getrusage,sys_getrusage,compat_sys_getrusage) |
89 | SYSCALL(sys_gettimeofday,sys_gettimeofday,compat_sys_gettimeofday_wrapper) | 89 | SYSCALL(sys_gettimeofday,sys_gettimeofday,compat_sys_gettimeofday) |
90 | SYSCALL(sys_settimeofday,sys_settimeofday,compat_sys_settimeofday_wrapper) | 90 | SYSCALL(sys_settimeofday,sys_settimeofday,compat_sys_settimeofday) |
91 | SYSCALL(sys_getgroups16,sys_ni_syscall,sys32_getgroups16_wrapper) /* 80 old getgroups16 syscall */ | 91 | SYSCALL(sys_getgroups16,sys_ni_syscall,compat_sys_s390_getgroups16) /* 80 old getgroups16 syscall */ |
92 | SYSCALL(sys_setgroups16,sys_ni_syscall,sys32_setgroups16_wrapper) /* old setgroups16 syscall */ | 92 | SYSCALL(sys_setgroups16,sys_ni_syscall,compat_sys_s390_setgroups16) /* old setgroups16 syscall */ |
93 | NI_SYSCALL /* old select syscall */ | 93 | NI_SYSCALL /* old select syscall */ |
94 | SYSCALL(sys_symlink,sys_symlink,sys32_symlink_wrapper) | 94 | SYSCALL(sys_symlink,sys_symlink,compat_sys_symlink) |
95 | NI_SYSCALL /* old lstat syscall */ | 95 | NI_SYSCALL /* old lstat syscall */ |
96 | SYSCALL(sys_readlink,sys_readlink,sys32_readlink_wrapper) /* 85 */ | 96 | SYSCALL(sys_readlink,sys_readlink,compat_sys_readlink) /* 85 */ |
97 | SYSCALL(sys_uselib,sys_uselib,sys32_uselib_wrapper) | 97 | SYSCALL(sys_uselib,sys_uselib,compat_sys_uselib) |
98 | SYSCALL(sys_swapon,sys_swapon,sys32_swapon_wrapper) | 98 | SYSCALL(sys_swapon,sys_swapon,compat_sys_swapon) |
99 | SYSCALL(sys_reboot,sys_reboot,sys32_reboot_wrapper) | 99 | SYSCALL(sys_reboot,sys_reboot,compat_sys_reboot) |
100 | SYSCALL(sys_ni_syscall,sys_ni_syscall,old32_readdir_wrapper) /* old readdir syscall */ | 100 | SYSCALL(sys_ni_syscall,sys_ni_syscall,compat_sys_old_readdir) /* old readdir syscall */ |
101 | SYSCALL(sys_old_mmap,sys_old_mmap,old32_mmap_wrapper) /* 90 */ | 101 | SYSCALL(sys_old_mmap,sys_old_mmap,compat_sys_s390_old_mmap) /* 90 */ |
102 | SYSCALL(sys_munmap,sys_munmap,sys32_munmap_wrapper) | 102 | SYSCALL(sys_munmap,sys_munmap,compat_sys_munmap) |
103 | SYSCALL(sys_truncate,sys_truncate,compat_sys_truncate) | 103 | SYSCALL(sys_truncate,sys_truncate,compat_sys_truncate) |
104 | SYSCALL(sys_ftruncate,sys_ftruncate,compat_sys_ftruncate) | 104 | SYSCALL(sys_ftruncate,sys_ftruncate,compat_sys_ftruncate) |
105 | SYSCALL(sys_fchmod,sys_fchmod,sys32_fchmod_wrapper) | 105 | SYSCALL(sys_fchmod,sys_fchmod,compat_sys_fchmod) |
106 | SYSCALL(sys_fchown16,sys_ni_syscall,sys32_fchown16_wrapper) /* 95 old fchown16 syscall*/ | 106 | SYSCALL(sys_fchown16,sys_ni_syscall,compat_sys_s390_fchown16) /* 95 old fchown16 syscall*/ |
107 | SYSCALL(sys_getpriority,sys_getpriority,sys32_getpriority_wrapper) | 107 | SYSCALL(sys_getpriority,sys_getpriority,compat_sys_getpriority) |
108 | SYSCALL(sys_setpriority,sys_setpriority,sys32_setpriority_wrapper) | 108 | SYSCALL(sys_setpriority,sys_setpriority,compat_sys_setpriority) |
109 | NI_SYSCALL /* old profil syscall */ | 109 | NI_SYSCALL /* old profil syscall */ |
110 | SYSCALL(sys_statfs,sys_statfs,compat_sys_statfs_wrapper) | 110 | SYSCALL(sys_statfs,sys_statfs,compat_sys_statfs) |
111 | SYSCALL(sys_fstatfs,sys_fstatfs,compat_sys_fstatfs_wrapper) /* 100 */ | 111 | SYSCALL(sys_fstatfs,sys_fstatfs,compat_sys_fstatfs) /* 100 */ |
112 | NI_SYSCALL /* ioperm for i386 */ | 112 | NI_SYSCALL /* ioperm for i386 */ |
113 | SYSCALL(sys_socketcall,sys_socketcall,compat_sys_socketcall_wrapper) | 113 | SYSCALL(sys_socketcall,sys_socketcall,compat_sys_socketcall) |
114 | SYSCALL(sys_syslog,sys_syslog,sys32_syslog_wrapper) | 114 | SYSCALL(sys_syslog,sys_syslog,compat_sys_syslog) |
115 | SYSCALL(sys_setitimer,sys_setitimer,compat_sys_setitimer) | 115 | SYSCALL(sys_setitimer,sys_setitimer,compat_sys_setitimer) |
116 | SYSCALL(sys_getitimer,sys_getitimer,compat_sys_getitimer) /* 105 */ | 116 | SYSCALL(sys_getitimer,sys_getitimer,compat_sys_getitimer) /* 105 */ |
117 | SYSCALL(sys_newstat,sys_newstat,compat_sys_newstat_wrapper) | 117 | SYSCALL(sys_newstat,sys_newstat,compat_sys_newstat) |
118 | SYSCALL(sys_newlstat,sys_newlstat,compat_sys_newlstat_wrapper) | 118 | SYSCALL(sys_newlstat,sys_newlstat,compat_sys_newlstat) |
119 | SYSCALL(sys_newfstat,sys_newfstat,compat_sys_newfstat_wrapper) | 119 | SYSCALL(sys_newfstat,sys_newfstat,compat_sys_newfstat) |
120 | NI_SYSCALL /* old uname syscall */ | 120 | NI_SYSCALL /* old uname syscall */ |
121 | SYSCALL(sys_lookup_dcookie,sys_lookup_dcookie,compat_sys_lookup_dcookie) /* 110 */ | 121 | SYSCALL(sys_lookup_dcookie,sys_lookup_dcookie,compat_sys_lookup_dcookie) /* 110 */ |
122 | SYSCALL(sys_vhangup,sys_vhangup,sys_vhangup) | 122 | SYSCALL(sys_vhangup,sys_vhangup,sys_vhangup) |
123 | NI_SYSCALL /* old "idle" system call */ | 123 | NI_SYSCALL /* old "idle" system call */ |
124 | NI_SYSCALL /* vm86old for i386 */ | 124 | NI_SYSCALL /* vm86old for i386 */ |
125 | SYSCALL(sys_wait4,sys_wait4,compat_sys_wait4) | 125 | SYSCALL(sys_wait4,sys_wait4,compat_sys_wait4) |
126 | SYSCALL(sys_swapoff,sys_swapoff,sys32_swapoff_wrapper) /* 115 */ | 126 | SYSCALL(sys_swapoff,sys_swapoff,compat_sys_swapoff) /* 115 */ |
127 | SYSCALL(sys_sysinfo,sys_sysinfo,compat_sys_sysinfo_wrapper) | 127 | SYSCALL(sys_sysinfo,sys_sysinfo,compat_sys_sysinfo) |
128 | SYSCALL(sys_s390_ipc,sys_s390_ipc,compat_sys_s390_ipc) | 128 | SYSCALL(sys_s390_ipc,sys_s390_ipc,compat_sys_s390_ipc) |
129 | SYSCALL(sys_fsync,sys_fsync,sys32_fsync_wrapper) | 129 | SYSCALL(sys_fsync,sys_fsync,compat_sys_fsync) |
130 | SYSCALL(sys_sigreturn,sys_sigreturn,sys32_sigreturn) | 130 | SYSCALL(sys_sigreturn,sys_sigreturn,compat_sys_sigreturn) |
131 | SYSCALL(sys_clone,sys_clone,sys_clone_wrapper) /* 120 */ | 131 | SYSCALL(sys_clone,sys_clone,compat_sys_clone) /* 120 */ |
132 | SYSCALL(sys_setdomainname,sys_setdomainname,sys32_setdomainname_wrapper) | 132 | SYSCALL(sys_setdomainname,sys_setdomainname,compat_sys_setdomainname) |
133 | SYSCALL(sys_newuname,sys_newuname,sys32_newuname_wrapper) | 133 | SYSCALL(sys_newuname,sys_newuname,compat_sys_newuname) |
134 | NI_SYSCALL /* modify_ldt for i386 */ | 134 | NI_SYSCALL /* modify_ldt for i386 */ |
135 | SYSCALL(sys_adjtimex,sys_adjtimex,compat_sys_adjtimex_wrapper) | 135 | SYSCALL(sys_adjtimex,sys_adjtimex,compat_sys_adjtimex) |
136 | SYSCALL(sys_mprotect,sys_mprotect,sys32_mprotect_wrapper) /* 125 */ | 136 | SYSCALL(sys_mprotect,sys_mprotect,compat_sys_mprotect) /* 125 */ |
137 | SYSCALL(sys_sigprocmask,sys_sigprocmask,compat_sys_sigprocmask) | 137 | SYSCALL(sys_sigprocmask,sys_sigprocmask,compat_sys_sigprocmask) |
138 | NI_SYSCALL /* old "create module" */ | 138 | NI_SYSCALL /* old "create module" */ |
139 | SYSCALL(sys_init_module,sys_init_module,sys_init_module_wrapper) | 139 | SYSCALL(sys_init_module,sys_init_module,compat_sys_init_module) |
140 | SYSCALL(sys_delete_module,sys_delete_module,sys_delete_module_wrapper) | 140 | SYSCALL(sys_delete_module,sys_delete_module,compat_sys_delete_module) |
141 | NI_SYSCALL /* 130: old get_kernel_syms */ | 141 | NI_SYSCALL /* 130: old get_kernel_syms */ |
142 | SYSCALL(sys_quotactl,sys_quotactl,sys32_quotactl_wrapper) | 142 | SYSCALL(sys_quotactl,sys_quotactl,compat_sys_quotactl) |
143 | SYSCALL(sys_getpgid,sys_getpgid,sys32_getpgid_wrapper) | 143 | SYSCALL(sys_getpgid,sys_getpgid,compat_sys_getpgid) |
144 | SYSCALL(sys_fchdir,sys_fchdir,sys32_fchdir_wrapper) | 144 | SYSCALL(sys_fchdir,sys_fchdir,compat_sys_fchdir) |
145 | SYSCALL(sys_bdflush,sys_bdflush,sys32_bdflush_wrapper) | 145 | SYSCALL(sys_bdflush,sys_bdflush,compat_sys_bdflush) |
146 | SYSCALL(sys_sysfs,sys_sysfs,sys32_sysfs_wrapper) /* 135 */ | 146 | SYSCALL(sys_sysfs,sys_sysfs,compat_sys_sysfs) /* 135 */ |
147 | SYSCALL(sys_personality,sys_s390_personality,sys32_personality_wrapper) | 147 | SYSCALL(sys_personality,sys_s390_personality,compat_sys_s390_personality) |
148 | NI_SYSCALL /* for afs_syscall */ | 148 | NI_SYSCALL /* for afs_syscall */ |
149 | SYSCALL(sys_setfsuid16,sys_ni_syscall,sys32_setfsuid16_wrapper) /* old setfsuid16 syscall */ | 149 | SYSCALL(sys_setfsuid16,sys_ni_syscall,compat_sys_s390_setfsuid16) /* old setfsuid16 syscall */ |
150 | SYSCALL(sys_setfsgid16,sys_ni_syscall,sys32_setfsgid16_wrapper) /* old setfsgid16 syscall */ | 150 | SYSCALL(sys_setfsgid16,sys_ni_syscall,compat_sys_s390_setfsgid16) /* old setfsgid16 syscall */ |
151 | SYSCALL(sys_llseek,sys_llseek,sys32_llseek_wrapper) /* 140 */ | 151 | SYSCALL(sys_llseek,sys_llseek,compat_sys_llseek) /* 140 */ |
152 | SYSCALL(sys_getdents,sys_getdents,sys32_getdents_wrapper) | 152 | SYSCALL(sys_getdents,sys_getdents,compat_sys_getdents) |
153 | SYSCALL(sys_select,sys_select,compat_sys_select_wrapper) | 153 | SYSCALL(sys_select,sys_select,compat_sys_select) |
154 | SYSCALL(sys_flock,sys_flock,sys32_flock_wrapper) | 154 | SYSCALL(sys_flock,sys_flock,compat_sys_flock) |
155 | SYSCALL(sys_msync,sys_msync,sys32_msync_wrapper) | 155 | SYSCALL(sys_msync,sys_msync,compat_sys_msync) |
156 | SYSCALL(sys_readv,sys_readv,compat_sys_readv_wrapper) /* 145 */ | 156 | SYSCALL(sys_readv,sys_readv,compat_sys_readv) /* 145 */ |
157 | SYSCALL(sys_writev,sys_writev,compat_sys_writev_wrapper) | 157 | SYSCALL(sys_writev,sys_writev,compat_sys_writev) |
158 | SYSCALL(sys_getsid,sys_getsid,sys32_getsid_wrapper) | 158 | SYSCALL(sys_getsid,sys_getsid,compat_sys_getsid) |
159 | SYSCALL(sys_fdatasync,sys_fdatasync,sys32_fdatasync_wrapper) | 159 | SYSCALL(sys_fdatasync,sys_fdatasync,compat_sys_fdatasync) |
160 | SYSCALL(sys_sysctl,sys_sysctl,compat_sys_sysctl) | 160 | SYSCALL(sys_sysctl,sys_sysctl,compat_sys_sysctl) |
161 | SYSCALL(sys_mlock,sys_mlock,sys32_mlock_wrapper) /* 150 */ | 161 | SYSCALL(sys_mlock,sys_mlock,compat_sys_mlock) /* 150 */ |
162 | SYSCALL(sys_munlock,sys_munlock,sys32_munlock_wrapper) | 162 | SYSCALL(sys_munlock,sys_munlock,compat_sys_munlock) |
163 | SYSCALL(sys_mlockall,sys_mlockall,sys32_mlockall_wrapper) | 163 | SYSCALL(sys_mlockall,sys_mlockall,compat_sys_mlockall) |
164 | SYSCALL(sys_munlockall,sys_munlockall,sys_munlockall) | 164 | SYSCALL(sys_munlockall,sys_munlockall,sys_munlockall) |
165 | SYSCALL(sys_sched_setparam,sys_sched_setparam,sys32_sched_setparam_wrapper) | 165 | SYSCALL(sys_sched_setparam,sys_sched_setparam,compat_sys_sched_setparam) |
166 | SYSCALL(sys_sched_getparam,sys_sched_getparam,sys32_sched_getparam_wrapper) /* 155 */ | 166 | SYSCALL(sys_sched_getparam,sys_sched_getparam,compat_sys_sched_getparam) /* 155 */ |
167 | SYSCALL(sys_sched_setscheduler,sys_sched_setscheduler,sys32_sched_setscheduler_wrapper) | 167 | SYSCALL(sys_sched_setscheduler,sys_sched_setscheduler,compat_sys_sched_setscheduler) |
168 | SYSCALL(sys_sched_getscheduler,sys_sched_getscheduler,sys32_sched_getscheduler_wrapper) | 168 | SYSCALL(sys_sched_getscheduler,sys_sched_getscheduler,compat_sys_sched_getscheduler) |
169 | SYSCALL(sys_sched_yield,sys_sched_yield,sys_sched_yield) | 169 | SYSCALL(sys_sched_yield,sys_sched_yield,sys_sched_yield) |
170 | SYSCALL(sys_sched_get_priority_max,sys_sched_get_priority_max,sys32_sched_get_priority_max_wrapper) | 170 | SYSCALL(sys_sched_get_priority_max,sys_sched_get_priority_max,compat_sys_sched_get_priority_max) |
171 | SYSCALL(sys_sched_get_priority_min,sys_sched_get_priority_min,sys32_sched_get_priority_min_wrapper) /* 160 */ | 171 | SYSCALL(sys_sched_get_priority_min,sys_sched_get_priority_min,compat_sys_sched_get_priority_min) /* 160 */ |
172 | SYSCALL(sys_sched_rr_get_interval,sys_sched_rr_get_interval,compat_sys_sched_rr_get_interval) | 172 | SYSCALL(sys_sched_rr_get_interval,sys_sched_rr_get_interval,compat_sys_sched_rr_get_interval) |
173 | SYSCALL(sys_nanosleep,sys_nanosleep,compat_sys_nanosleep_wrapper) | 173 | SYSCALL(sys_nanosleep,sys_nanosleep,compat_sys_nanosleep) |
174 | SYSCALL(sys_mremap,sys_mremap,sys32_mremap_wrapper) | 174 | SYSCALL(sys_mremap,sys_mremap,compat_sys_mremap) |
175 | SYSCALL(sys_setresuid16,sys_ni_syscall,sys32_setresuid16_wrapper) /* old setresuid16 syscall */ | 175 | SYSCALL(sys_setresuid16,sys_ni_syscall,compat_sys_s390_setresuid16) /* old setresuid16 syscall */ |
176 | SYSCALL(sys_getresuid16,sys_ni_syscall,sys32_getresuid16_wrapper) /* 165 old getresuid16 syscall */ | 176 | SYSCALL(sys_getresuid16,sys_ni_syscall,compat_sys_s390_getresuid16) /* 165 old getresuid16 syscall */ |
177 | NI_SYSCALL /* for vm86 */ | 177 | NI_SYSCALL /* for vm86 */ |
178 | NI_SYSCALL /* old sys_query_module */ | 178 | NI_SYSCALL /* old sys_query_module */ |
179 | SYSCALL(sys_poll,sys_poll,sys32_poll_wrapper) | 179 | SYSCALL(sys_poll,sys_poll,compat_sys_poll) |
180 | NI_SYSCALL /* old nfsservctl */ | 180 | NI_SYSCALL /* old nfsservctl */ |
181 | SYSCALL(sys_setresgid16,sys_ni_syscall,sys32_setresgid16_wrapper) /* 170 old setresgid16 syscall */ | 181 | SYSCALL(sys_setresgid16,sys_ni_syscall,compat_sys_s390_setresgid16) /* 170 old setresgid16 syscall */ |
182 | SYSCALL(sys_getresgid16,sys_ni_syscall,sys32_getresgid16_wrapper) /* old getresgid16 syscall */ | 182 | SYSCALL(sys_getresgid16,sys_ni_syscall,compat_sys_s390_getresgid16) /* old getresgid16 syscall */ |
183 | SYSCALL(sys_prctl,sys_prctl,sys32_prctl_wrapper) | 183 | SYSCALL(sys_prctl,sys_prctl,compat_sys_prctl) |
184 | SYSCALL(sys_rt_sigreturn,sys_rt_sigreturn,sys32_rt_sigreturn) | 184 | SYSCALL(sys_rt_sigreturn,sys_rt_sigreturn,compat_sys_rt_sigreturn) |
185 | SYSCALL(sys_rt_sigaction,sys_rt_sigaction,compat_sys_rt_sigaction) | 185 | SYSCALL(sys_rt_sigaction,sys_rt_sigaction,compat_sys_rt_sigaction) |
186 | SYSCALL(sys_rt_sigprocmask,sys_rt_sigprocmask,compat_sys_rt_sigprocmask) /* 175 */ | 186 | SYSCALL(sys_rt_sigprocmask,sys_rt_sigprocmask,compat_sys_rt_sigprocmask) /* 175 */ |
187 | SYSCALL(sys_rt_sigpending,sys_rt_sigpending,compat_sys_rt_sigpending) | 187 | SYSCALL(sys_rt_sigpending,sys_rt_sigpending,compat_sys_rt_sigpending) |
188 | SYSCALL(sys_rt_sigtimedwait,sys_rt_sigtimedwait,compat_sys_rt_sigtimedwait) | 188 | SYSCALL(sys_rt_sigtimedwait,sys_rt_sigtimedwait,compat_sys_rt_sigtimedwait) |
189 | SYSCALL(sys_rt_sigqueueinfo,sys_rt_sigqueueinfo,compat_sys_rt_sigqueueinfo) | 189 | SYSCALL(sys_rt_sigqueueinfo,sys_rt_sigqueueinfo,compat_sys_rt_sigqueueinfo) |
190 | SYSCALL(sys_rt_sigsuspend,sys_rt_sigsuspend,compat_sys_rt_sigsuspend) | 190 | SYSCALL(sys_rt_sigsuspend,sys_rt_sigsuspend,compat_sys_rt_sigsuspend) |
191 | SYSCALL(sys_pread64,sys_pread64,sys32_pread64_wrapper) /* 180 */ | 191 | SYSCALL(sys_pread64,sys_pread64,compat_sys_s390_pread64) /* 180 */ |
192 | SYSCALL(sys_pwrite64,sys_pwrite64,sys32_pwrite64_wrapper) | 192 | SYSCALL(sys_pwrite64,sys_pwrite64,compat_sys_s390_pwrite64) |
193 | SYSCALL(sys_chown16,sys_ni_syscall,sys32_chown16_wrapper) /* old chown16 syscall */ | 193 | SYSCALL(sys_chown16,sys_ni_syscall,compat_sys_s390_chown16) /* old chown16 syscall */ |
194 | SYSCALL(sys_getcwd,sys_getcwd,sys32_getcwd_wrapper) | 194 | SYSCALL(sys_getcwd,sys_getcwd,compat_sys_getcwd) |
195 | SYSCALL(sys_capget,sys_capget,sys32_capget_wrapper) | 195 | SYSCALL(sys_capget,sys_capget,compat_sys_capget) |
196 | SYSCALL(sys_capset,sys_capset,sys32_capset_wrapper) /* 185 */ | 196 | SYSCALL(sys_capset,sys_capset,compat_sys_capset) /* 185 */ |
197 | SYSCALL(sys_sigaltstack,sys_sigaltstack,compat_sys_sigaltstack) | 197 | SYSCALL(sys_sigaltstack,sys_sigaltstack,compat_sys_sigaltstack) |
198 | SYSCALL(sys_sendfile,sys_sendfile64,compat_sys_sendfile) | 198 | SYSCALL(sys_sendfile,sys_sendfile64,compat_sys_sendfile) |
199 | NI_SYSCALL /* streams1 */ | 199 | NI_SYSCALL /* streams1 */ |
200 | NI_SYSCALL /* streams2 */ | 200 | NI_SYSCALL /* streams2 */ |
201 | SYSCALL(sys_vfork,sys_vfork,sys_vfork) /* 190 */ | 201 | SYSCALL(sys_vfork,sys_vfork,sys_vfork) /* 190 */ |
202 | SYSCALL(sys_getrlimit,sys_getrlimit,compat_sys_getrlimit_wrapper) | 202 | SYSCALL(sys_getrlimit,sys_getrlimit,compat_sys_getrlimit) |
203 | SYSCALL(sys_mmap2,sys_mmap2,sys32_mmap2_wrapper) | 203 | SYSCALL(sys_mmap2,sys_mmap2,compat_sys_s390_mmap2) |
204 | SYSCALL(sys_truncate64,sys_ni_syscall,sys32_truncate64_wrapper) | 204 | SYSCALL(sys_truncate64,sys_ni_syscall,compat_sys_s390_truncate64) |
205 | SYSCALL(sys_ftruncate64,sys_ni_syscall,sys32_ftruncate64_wrapper) | 205 | SYSCALL(sys_ftruncate64,sys_ni_syscall,compat_sys_s390_ftruncate64) |
206 | SYSCALL(sys_stat64,sys_ni_syscall,sys32_stat64_wrapper) /* 195 */ | 206 | SYSCALL(sys_stat64,sys_ni_syscall,compat_sys_s390_stat64) /* 195 */ |
207 | SYSCALL(sys_lstat64,sys_ni_syscall,sys32_lstat64_wrapper) | 207 | SYSCALL(sys_lstat64,sys_ni_syscall,compat_sys_s390_lstat64) |
208 | SYSCALL(sys_fstat64,sys_ni_syscall,sys32_fstat64_wrapper) | 208 | SYSCALL(sys_fstat64,sys_ni_syscall,compat_sys_s390_fstat64) |
209 | SYSCALL(sys_lchown,sys_lchown,sys32_lchown_wrapper) | 209 | SYSCALL(sys_lchown,sys_lchown,compat_sys_lchown) |
210 | SYSCALL(sys_getuid,sys_getuid,sys_getuid) | 210 | SYSCALL(sys_getuid,sys_getuid,sys_getuid) |
211 | SYSCALL(sys_getgid,sys_getgid,sys_getgid) /* 200 */ | 211 | SYSCALL(sys_getgid,sys_getgid,sys_getgid) /* 200 */ |
212 | SYSCALL(sys_geteuid,sys_geteuid,sys_geteuid) | 212 | SYSCALL(sys_geteuid,sys_geteuid,sys_geteuid) |
213 | SYSCALL(sys_getegid,sys_getegid,sys_getegid) | 213 | SYSCALL(sys_getegid,sys_getegid,sys_getegid) |
214 | SYSCALL(sys_setreuid,sys_setreuid,sys32_setreuid_wrapper) | 214 | SYSCALL(sys_setreuid,sys_setreuid,compat_sys_setreuid) |
215 | SYSCALL(sys_setregid,sys_setregid,sys32_setregid_wrapper) | 215 | SYSCALL(sys_setregid,sys_setregid,compat_sys_setregid) |
216 | SYSCALL(sys_getgroups,sys_getgroups,sys32_getgroups_wrapper) /* 205 */ | 216 | SYSCALL(sys_getgroups,sys_getgroups,compat_sys_getgroups) /* 205 */ |
217 | SYSCALL(sys_setgroups,sys_setgroups,sys32_setgroups_wrapper) | 217 | SYSCALL(sys_setgroups,sys_setgroups,compat_sys_setgroups) |
218 | SYSCALL(sys_fchown,sys_fchown,sys32_fchown_wrapper) | 218 | SYSCALL(sys_fchown,sys_fchown,compat_sys_fchown) |
219 | SYSCALL(sys_setresuid,sys_setresuid,sys32_setresuid_wrapper) | 219 | SYSCALL(sys_setresuid,sys_setresuid,compat_sys_setresuid) |
220 | SYSCALL(sys_getresuid,sys_getresuid,sys32_getresuid_wrapper) | 220 | SYSCALL(sys_getresuid,sys_getresuid,compat_sys_getresuid) |
221 | SYSCALL(sys_setresgid,sys_setresgid,sys32_setresgid_wrapper) /* 210 */ | 221 | SYSCALL(sys_setresgid,sys_setresgid,compat_sys_setresgid) /* 210 */ |
222 | SYSCALL(sys_getresgid,sys_getresgid,sys32_getresgid_wrapper) | 222 | SYSCALL(sys_getresgid,sys_getresgid,compat_sys_getresgid) |
223 | SYSCALL(sys_chown,sys_chown,sys32_chown_wrapper) | 223 | SYSCALL(sys_chown,sys_chown,compat_sys_chown) |
224 | SYSCALL(sys_setuid,sys_setuid,sys32_setuid_wrapper) | 224 | SYSCALL(sys_setuid,sys_setuid,compat_sys_setuid) |
225 | SYSCALL(sys_setgid,sys_setgid,sys32_setgid_wrapper) | 225 | SYSCALL(sys_setgid,sys_setgid,compat_sys_setgid) |
226 | SYSCALL(sys_setfsuid,sys_setfsuid,sys32_setfsuid_wrapper) /* 215 */ | 226 | SYSCALL(sys_setfsuid,sys_setfsuid,compat_sys_setfsuid) /* 215 */ |
227 | SYSCALL(sys_setfsgid,sys_setfsgid,sys32_setfsgid_wrapper) | 227 | SYSCALL(sys_setfsgid,sys_setfsgid,compat_sys_setfsgid) |
228 | SYSCALL(sys_pivot_root,sys_pivot_root,sys32_pivot_root_wrapper) | 228 | SYSCALL(sys_pivot_root,sys_pivot_root,compat_sys_pivot_root) |
229 | SYSCALL(sys_mincore,sys_mincore,sys32_mincore_wrapper) | 229 | SYSCALL(sys_mincore,sys_mincore,compat_sys_mincore) |
230 | SYSCALL(sys_madvise,sys_madvise,sys32_madvise_wrapper) | 230 | SYSCALL(sys_madvise,sys_madvise,compat_sys_madvise) |
231 | SYSCALL(sys_getdents64,sys_getdents64,sys32_getdents64_wrapper) /* 220 */ | 231 | SYSCALL(sys_getdents64,sys_getdents64,compat_sys_getdents64) /* 220 */ |
232 | SYSCALL(sys_fcntl64,sys_ni_syscall,compat_sys_fcntl64_wrapper) | 232 | SYSCALL(sys_fcntl64,sys_ni_syscall,compat_sys_fcntl64) |
233 | SYSCALL(sys_readahead,sys_readahead,sys32_readahead_wrapper) | 233 | SYSCALL(sys_readahead,sys_readahead,compat_sys_s390_readahead) |
234 | SYSCALL(sys_sendfile64,sys_ni_syscall,compat_sys_sendfile64) | 234 | SYSCALL(sys_sendfile64,sys_ni_syscall,compat_sys_sendfile64) |
235 | SYSCALL(sys_setxattr,sys_setxattr,sys32_setxattr_wrapper) | 235 | SYSCALL(sys_setxattr,sys_setxattr,compat_sys_setxattr) |
236 | SYSCALL(sys_lsetxattr,sys_lsetxattr,sys32_lsetxattr_wrapper) /* 225 */ | 236 | SYSCALL(sys_lsetxattr,sys_lsetxattr,compat_sys_lsetxattr) /* 225 */ |
237 | SYSCALL(sys_fsetxattr,sys_fsetxattr,sys32_fsetxattr_wrapper) | 237 | SYSCALL(sys_fsetxattr,sys_fsetxattr,compat_sys_fsetxattr) |
238 | SYSCALL(sys_getxattr,sys_getxattr,sys32_getxattr_wrapper) | 238 | SYSCALL(sys_getxattr,sys_getxattr,compat_sys_getxattr) |
239 | SYSCALL(sys_lgetxattr,sys_lgetxattr,sys32_lgetxattr_wrapper) | 239 | SYSCALL(sys_lgetxattr,sys_lgetxattr,compat_sys_lgetxattr) |
240 | SYSCALL(sys_fgetxattr,sys_fgetxattr,sys32_fgetxattr_wrapper) | 240 | SYSCALL(sys_fgetxattr,sys_fgetxattr,compat_sys_fgetxattr) |
241 | SYSCALL(sys_listxattr,sys_listxattr,sys32_listxattr_wrapper) /* 230 */ | 241 | SYSCALL(sys_listxattr,sys_listxattr,compat_sys_listxattr) /* 230 */ |
242 | SYSCALL(sys_llistxattr,sys_llistxattr,sys32_llistxattr_wrapper) | 242 | SYSCALL(sys_llistxattr,sys_llistxattr,compat_sys_llistxattr) |
243 | SYSCALL(sys_flistxattr,sys_flistxattr,sys32_flistxattr_wrapper) | 243 | SYSCALL(sys_flistxattr,sys_flistxattr,compat_sys_flistxattr) |
244 | SYSCALL(sys_removexattr,sys_removexattr,sys32_removexattr_wrapper) | 244 | SYSCALL(sys_removexattr,sys_removexattr,compat_sys_removexattr) |
245 | SYSCALL(sys_lremovexattr,sys_lremovexattr,sys32_lremovexattr_wrapper) | 245 | SYSCALL(sys_lremovexattr,sys_lremovexattr,compat_sys_lremovexattr) |
246 | SYSCALL(sys_fremovexattr,sys_fremovexattr,sys32_fremovexattr_wrapper) /* 235 */ | 246 | SYSCALL(sys_fremovexattr,sys_fremovexattr,compat_sys_fremovexattr) /* 235 */ |
247 | SYSCALL(sys_gettid,sys_gettid,sys_gettid) | 247 | SYSCALL(sys_gettid,sys_gettid,sys_gettid) |
248 | SYSCALL(sys_tkill,sys_tkill,sys_tkill_wrapper) | 248 | SYSCALL(sys_tkill,sys_tkill,compat_sys_tkill) |
249 | SYSCALL(sys_futex,sys_futex,compat_sys_futex) | 249 | SYSCALL(sys_futex,sys_futex,compat_sys_futex) |
250 | SYSCALL(sys_sched_setaffinity,sys_sched_setaffinity,sys32_sched_setaffinity_wrapper) | 250 | SYSCALL(sys_sched_setaffinity,sys_sched_setaffinity,compat_sys_sched_setaffinity) |
251 | SYSCALL(sys_sched_getaffinity,sys_sched_getaffinity,sys32_sched_getaffinity_wrapper) /* 240 */ | 251 | SYSCALL(sys_sched_getaffinity,sys_sched_getaffinity,compat_sys_sched_getaffinity) /* 240 */ |
252 | SYSCALL(sys_tgkill,sys_tgkill,sys_tgkill_wrapper) | 252 | SYSCALL(sys_tgkill,sys_tgkill,compat_sys_tgkill) |
253 | NI_SYSCALL /* reserved for TUX */ | 253 | NI_SYSCALL /* reserved for TUX */ |
254 | SYSCALL(sys_io_setup,sys_io_setup,sys32_io_setup_wrapper) | 254 | SYSCALL(sys_io_setup,sys_io_setup,compat_sys_io_setup) |
255 | SYSCALL(sys_io_destroy,sys_io_destroy,sys32_io_destroy_wrapper) | 255 | SYSCALL(sys_io_destroy,sys_io_destroy,compat_sys_io_destroy) |
256 | SYSCALL(sys_io_getevents,sys_io_getevents,sys32_io_getevents_wrapper) /* 245 */ | 256 | SYSCALL(sys_io_getevents,sys_io_getevents,compat_sys_io_getevents) /* 245 */ |
257 | SYSCALL(sys_io_submit,sys_io_submit,sys32_io_submit_wrapper) | 257 | SYSCALL(sys_io_submit,sys_io_submit,compat_sys_io_submit) |
258 | SYSCALL(sys_io_cancel,sys_io_cancel,sys32_io_cancel_wrapper) | 258 | SYSCALL(sys_io_cancel,sys_io_cancel,compat_sys_io_cancel) |
259 | SYSCALL(sys_exit_group,sys_exit_group,sys32_exit_group_wrapper) | 259 | SYSCALL(sys_exit_group,sys_exit_group,compat_sys_exit_group) |
260 | SYSCALL(sys_epoll_create,sys_epoll_create,sys_epoll_create_wrapper) | 260 | SYSCALL(sys_epoll_create,sys_epoll_create,compat_sys_epoll_create) |
261 | SYSCALL(sys_epoll_ctl,sys_epoll_ctl,sys_epoll_ctl_wrapper) /* 250 */ | 261 | SYSCALL(sys_epoll_ctl,sys_epoll_ctl,compat_sys_epoll_ctl) /* 250 */ |
262 | SYSCALL(sys_epoll_wait,sys_epoll_wait,sys_epoll_wait_wrapper) | 262 | SYSCALL(sys_epoll_wait,sys_epoll_wait,compat_sys_epoll_wait) |
263 | SYSCALL(sys_set_tid_address,sys_set_tid_address,sys32_set_tid_address_wrapper) | 263 | SYSCALL(sys_set_tid_address,sys_set_tid_address,compat_sys_set_tid_address) |
264 | SYSCALL(sys_s390_fadvise64,sys_fadvise64_64,sys32_fadvise64_wrapper) | 264 | SYSCALL(sys_s390_fadvise64,sys_fadvise64_64,compat_sys_s390_fadvise64) |
265 | SYSCALL(sys_timer_create,sys_timer_create,sys32_timer_create_wrapper) | 265 | SYSCALL(sys_timer_create,sys_timer_create,compat_sys_timer_create) |
266 | SYSCALL(sys_timer_settime,sys_timer_settime,sys32_timer_settime_wrapper) /* 255 */ | 266 | SYSCALL(sys_timer_settime,sys_timer_settime,compat_sys_timer_settime) /* 255 */ |
267 | SYSCALL(sys_timer_gettime,sys_timer_gettime,sys32_timer_gettime_wrapper) | 267 | SYSCALL(sys_timer_gettime,sys_timer_gettime,compat_sys_timer_gettime) |
268 | SYSCALL(sys_timer_getoverrun,sys_timer_getoverrun,sys32_timer_getoverrun_wrapper) | 268 | SYSCALL(sys_timer_getoverrun,sys_timer_getoverrun,compat_sys_timer_getoverrun) |
269 | SYSCALL(sys_timer_delete,sys_timer_delete,sys32_timer_delete_wrapper) | 269 | SYSCALL(sys_timer_delete,sys_timer_delete,compat_sys_timer_delete) |
270 | SYSCALL(sys_clock_settime,sys_clock_settime,sys32_clock_settime_wrapper) | 270 | SYSCALL(sys_clock_settime,sys_clock_settime,compat_sys_clock_settime) |
271 | SYSCALL(sys_clock_gettime,sys_clock_gettime,sys32_clock_gettime_wrapper) /* 260 */ | 271 | SYSCALL(sys_clock_gettime,sys_clock_gettime,compat_sys_clock_gettime) /* 260 */ |
272 | SYSCALL(sys_clock_getres,sys_clock_getres,sys32_clock_getres_wrapper) | 272 | SYSCALL(sys_clock_getres,sys_clock_getres,compat_sys_clock_getres) |
273 | SYSCALL(sys_clock_nanosleep,sys_clock_nanosleep,sys32_clock_nanosleep_wrapper) | 273 | SYSCALL(sys_clock_nanosleep,sys_clock_nanosleep,compat_sys_clock_nanosleep) |
274 | NI_SYSCALL /* reserved for vserver */ | 274 | NI_SYSCALL /* reserved for vserver */ |
275 | SYSCALL(sys_s390_fadvise64_64,sys_ni_syscall,sys32_fadvise64_64_wrapper) | 275 | SYSCALL(sys_s390_fadvise64_64,sys_ni_syscall,compat_sys_s390_fadvise64_64) |
276 | SYSCALL(sys_statfs64,sys_statfs64,compat_sys_statfs64_wrapper) | 276 | SYSCALL(sys_statfs64,sys_statfs64,compat_sys_statfs64) |
277 | SYSCALL(sys_fstatfs64,sys_fstatfs64,compat_sys_fstatfs64_wrapper) | 277 | SYSCALL(sys_fstatfs64,sys_fstatfs64,compat_sys_fstatfs64) |
278 | SYSCALL(sys_remap_file_pages,sys_remap_file_pages,sys32_remap_file_pages_wrapper) | 278 | SYSCALL(sys_remap_file_pages,sys_remap_file_pages,compat_sys_remap_file_pages) |
279 | NI_SYSCALL /* 268 sys_mbind */ | 279 | NI_SYSCALL /* 268 sys_mbind */ |
280 | NI_SYSCALL /* 269 sys_get_mempolicy */ | 280 | NI_SYSCALL /* 269 sys_get_mempolicy */ |
281 | NI_SYSCALL /* 270 sys_set_mempolicy */ | 281 | NI_SYSCALL /* 270 sys_set_mempolicy */ |
282 | SYSCALL(sys_mq_open,sys_mq_open,compat_sys_mq_open_wrapper) | 282 | SYSCALL(sys_mq_open,sys_mq_open,compat_sys_mq_open) |
283 | SYSCALL(sys_mq_unlink,sys_mq_unlink,sys32_mq_unlink_wrapper) | 283 | SYSCALL(sys_mq_unlink,sys_mq_unlink,compat_sys_mq_unlink) |
284 | SYSCALL(sys_mq_timedsend,sys_mq_timedsend,compat_sys_mq_timedsend_wrapper) | 284 | SYSCALL(sys_mq_timedsend,sys_mq_timedsend,compat_sys_mq_timedsend) |
285 | SYSCALL(sys_mq_timedreceive,sys_mq_timedreceive,compat_sys_mq_timedreceive_wrapper) | 285 | SYSCALL(sys_mq_timedreceive,sys_mq_timedreceive,compat_sys_mq_timedreceive) |
286 | SYSCALL(sys_mq_notify,sys_mq_notify,compat_sys_mq_notify_wrapper) /* 275 */ | 286 | SYSCALL(sys_mq_notify,sys_mq_notify,compat_sys_mq_notify) /* 275 */ |
287 | SYSCALL(sys_mq_getsetattr,sys_mq_getsetattr,compat_sys_mq_getsetattr_wrapper) | 287 | SYSCALL(sys_mq_getsetattr,sys_mq_getsetattr,compat_sys_mq_getsetattr) |
288 | SYSCALL(sys_kexec_load,sys_kexec_load,compat_sys_kexec_load_wrapper) | 288 | SYSCALL(sys_kexec_load,sys_kexec_load,compat_sys_kexec_load) |
289 | SYSCALL(sys_add_key,sys_add_key,compat_sys_add_key_wrapper) | 289 | SYSCALL(sys_add_key,sys_add_key,compat_sys_add_key) |
290 | SYSCALL(sys_request_key,sys_request_key,compat_sys_request_key_wrapper) | 290 | SYSCALL(sys_request_key,sys_request_key,compat_sys_request_key) |
291 | SYSCALL(sys_keyctl,sys_keyctl,compat_sys_keyctl_wrapper) /* 280 */ | 291 | SYSCALL(sys_keyctl,sys_keyctl,compat_sys_keyctl) /* 280 */ |
292 | SYSCALL(sys_waitid,sys_waitid,compat_sys_waitid) | 292 | SYSCALL(sys_waitid,sys_waitid,compat_sys_waitid) |
293 | SYSCALL(sys_ioprio_set,sys_ioprio_set,sys_ioprio_set_wrapper) | 293 | SYSCALL(sys_ioprio_set,sys_ioprio_set,compat_sys_ioprio_set) |
294 | SYSCALL(sys_ioprio_get,sys_ioprio_get,sys_ioprio_get_wrapper) | 294 | SYSCALL(sys_ioprio_get,sys_ioprio_get,compat_sys_ioprio_get) |
295 | SYSCALL(sys_inotify_init,sys_inotify_init,sys_inotify_init) | 295 | SYSCALL(sys_inotify_init,sys_inotify_init,sys_inotify_init) |
296 | SYSCALL(sys_inotify_add_watch,sys_inotify_add_watch,sys_inotify_add_watch_wrapper) /* 285 */ | 296 | SYSCALL(sys_inotify_add_watch,sys_inotify_add_watch,compat_sys_inotify_add_watch) /* 285 */ |
297 | SYSCALL(sys_inotify_rm_watch,sys_inotify_rm_watch,sys_inotify_rm_watch_wrapper) | 297 | SYSCALL(sys_inotify_rm_watch,sys_inotify_rm_watch,compat_sys_inotify_rm_watch) |
298 | NI_SYSCALL /* 287 sys_migrate_pages */ | 298 | NI_SYSCALL /* 287 sys_migrate_pages */ |
299 | SYSCALL(sys_openat,sys_openat,compat_sys_openat) | 299 | SYSCALL(sys_openat,sys_openat,compat_sys_openat) |
300 | SYSCALL(sys_mkdirat,sys_mkdirat,sys_mkdirat_wrapper) | 300 | SYSCALL(sys_mkdirat,sys_mkdirat,compat_sys_mkdirat) |
301 | SYSCALL(sys_mknodat,sys_mknodat,sys_mknodat_wrapper) /* 290 */ | 301 | SYSCALL(sys_mknodat,sys_mknodat,compat_sys_mknodat) /* 290 */ |
302 | SYSCALL(sys_fchownat,sys_fchownat,sys_fchownat_wrapper) | 302 | SYSCALL(sys_fchownat,sys_fchownat,compat_sys_fchownat) |
303 | SYSCALL(sys_futimesat,sys_futimesat,compat_sys_futimesat_wrapper) | 303 | SYSCALL(sys_futimesat,sys_futimesat,compat_sys_futimesat) |
304 | SYSCALL(sys_fstatat64,sys_newfstatat,sys32_fstatat64_wrapper) | 304 | SYSCALL(sys_fstatat64,sys_newfstatat,compat_sys_s390_fstatat64) |
305 | SYSCALL(sys_unlinkat,sys_unlinkat,sys_unlinkat_wrapper) | 305 | SYSCALL(sys_unlinkat,sys_unlinkat,compat_sys_unlinkat) |
306 | SYSCALL(sys_renameat,sys_renameat,sys_renameat_wrapper) /* 295 */ | 306 | SYSCALL(sys_renameat,sys_renameat,compat_sys_renameat) /* 295 */ |
307 | SYSCALL(sys_linkat,sys_linkat,sys_linkat_wrapper) | 307 | SYSCALL(sys_linkat,sys_linkat,compat_sys_linkat) |
308 | SYSCALL(sys_symlinkat,sys_symlinkat,sys_symlinkat_wrapper) | 308 | SYSCALL(sys_symlinkat,sys_symlinkat,compat_sys_symlinkat) |
309 | SYSCALL(sys_readlinkat,sys_readlinkat,sys_readlinkat_wrapper) | 309 | SYSCALL(sys_readlinkat,sys_readlinkat,compat_sys_readlinkat) |
310 | SYSCALL(sys_fchmodat,sys_fchmodat,sys_fchmodat_wrapper) | 310 | SYSCALL(sys_fchmodat,sys_fchmodat,compat_sys_fchmodat) |
311 | SYSCALL(sys_faccessat,sys_faccessat,sys_faccessat_wrapper) /* 300 */ | 311 | SYSCALL(sys_faccessat,sys_faccessat,compat_sys_faccessat) /* 300 */ |
312 | SYSCALL(sys_pselect6,sys_pselect6,compat_sys_pselect6_wrapper) | 312 | SYSCALL(sys_pselect6,sys_pselect6,compat_sys_pselect6) |
313 | SYSCALL(sys_ppoll,sys_ppoll,compat_sys_ppoll_wrapper) | 313 | SYSCALL(sys_ppoll,sys_ppoll,compat_sys_ppoll) |
314 | SYSCALL(sys_unshare,sys_unshare,sys_unshare_wrapper) | 314 | SYSCALL(sys_unshare,sys_unshare,compat_sys_unshare) |
315 | SYSCALL(sys_set_robust_list,sys_set_robust_list,compat_sys_set_robust_list) | 315 | SYSCALL(sys_set_robust_list,sys_set_robust_list,compat_sys_set_robust_list) |
316 | SYSCALL(sys_get_robust_list,sys_get_robust_list,compat_sys_get_robust_list) | 316 | SYSCALL(sys_get_robust_list,sys_get_robust_list,compat_sys_get_robust_list) |
317 | SYSCALL(sys_splice,sys_splice,sys_splice_wrapper) | 317 | SYSCALL(sys_splice,sys_splice,compat_sys_splice) |
318 | SYSCALL(sys_sync_file_range,sys_sync_file_range,sys_sync_file_range_wrapper) | 318 | SYSCALL(sys_sync_file_range,sys_sync_file_range,compat_sys_s390_sync_file_range) |
319 | SYSCALL(sys_tee,sys_tee,sys_tee_wrapper) | 319 | SYSCALL(sys_tee,sys_tee,compat_sys_tee) |
320 | SYSCALL(sys_vmsplice,sys_vmsplice,compat_sys_vmsplice) | 320 | SYSCALL(sys_vmsplice,sys_vmsplice,compat_sys_vmsplice) |
321 | NI_SYSCALL /* 310 sys_move_pages */ | 321 | NI_SYSCALL /* 310 sys_move_pages */ |
322 | SYSCALL(sys_getcpu,sys_getcpu,sys_getcpu_wrapper) | 322 | SYSCALL(sys_getcpu,sys_getcpu,compat_sys_getcpu) |
323 | SYSCALL(sys_epoll_pwait,sys_epoll_pwait,compat_sys_epoll_pwait) | 323 | SYSCALL(sys_epoll_pwait,sys_epoll_pwait,compat_sys_epoll_pwait) |
324 | SYSCALL(sys_utimes,sys_utimes,compat_sys_utimes_wrapper) | 324 | SYSCALL(sys_utimes,sys_utimes,compat_sys_utimes) |
325 | SYSCALL(sys_s390_fallocate,sys_fallocate,sys_fallocate_wrapper) | 325 | SYSCALL(sys_s390_fallocate,sys_fallocate,compat_sys_s390_fallocate) |
326 | SYSCALL(sys_utimensat,sys_utimensat,compat_sys_utimensat_wrapper) /* 315 */ | 326 | SYSCALL(sys_utimensat,sys_utimensat,compat_sys_utimensat) /* 315 */ |
327 | SYSCALL(sys_signalfd,sys_signalfd,compat_sys_signalfd) | 327 | SYSCALL(sys_signalfd,sys_signalfd,compat_sys_signalfd) |
328 | NI_SYSCALL /* 317 old sys_timer_fd */ | 328 | NI_SYSCALL /* 317 old sys_timer_fd */ |
329 | SYSCALL(sys_eventfd,sys_eventfd,sys_eventfd_wrapper) | 329 | SYSCALL(sys_eventfd,sys_eventfd,compat_sys_eventfd) |
330 | SYSCALL(sys_timerfd_create,sys_timerfd_create,sys_timerfd_create_wrapper) | 330 | SYSCALL(sys_timerfd_create,sys_timerfd_create,compat_sys_timerfd_create) |
331 | SYSCALL(sys_timerfd_settime,sys_timerfd_settime,compat_sys_timerfd_settime) /* 320 */ | 331 | SYSCALL(sys_timerfd_settime,sys_timerfd_settime,compat_sys_timerfd_settime) /* 320 */ |
332 | SYSCALL(sys_timerfd_gettime,sys_timerfd_gettime,compat_sys_timerfd_gettime) | 332 | SYSCALL(sys_timerfd_gettime,sys_timerfd_gettime,compat_sys_timerfd_gettime) |
333 | SYSCALL(sys_signalfd4,sys_signalfd4,compat_sys_signalfd4) | 333 | SYSCALL(sys_signalfd4,sys_signalfd4,compat_sys_signalfd4) |
334 | SYSCALL(sys_eventfd2,sys_eventfd2,sys_eventfd2_wrapper) | 334 | SYSCALL(sys_eventfd2,sys_eventfd2,compat_sys_eventfd2) |
335 | SYSCALL(sys_inotify_init1,sys_inotify_init1,sys_inotify_init1_wrapper) | 335 | SYSCALL(sys_inotify_init1,sys_inotify_init1,compat_sys_inotify_init1) |
336 | SYSCALL(sys_pipe2,sys_pipe2,sys_pipe2_wrapper) /* 325 */ | 336 | SYSCALL(sys_pipe2,sys_pipe2,compat_sys_pipe2) /* 325 */ |
337 | SYSCALL(sys_dup3,sys_dup3,sys_dup3_wrapper) | 337 | SYSCALL(sys_dup3,sys_dup3,compat_sys_dup3) |
338 | SYSCALL(sys_epoll_create1,sys_epoll_create1,sys_epoll_create1_wrapper) | 338 | SYSCALL(sys_epoll_create1,sys_epoll_create1,compat_sys_epoll_create1) |
339 | SYSCALL(sys_preadv,sys_preadv,compat_sys_preadv) | 339 | SYSCALL(sys_preadv,sys_preadv,compat_sys_preadv) |
340 | SYSCALL(sys_pwritev,sys_pwritev,compat_sys_pwritev) | 340 | SYSCALL(sys_pwritev,sys_pwritev,compat_sys_pwritev) |
341 | SYSCALL(sys_rt_tgsigqueueinfo,sys_rt_tgsigqueueinfo,compat_sys_rt_tgsigqueueinfo) /* 330 */ | 341 | SYSCALL(sys_rt_tgsigqueueinfo,sys_rt_tgsigqueueinfo,compat_sys_rt_tgsigqueueinfo) /* 330 */ |
342 | SYSCALL(sys_perf_event_open,sys_perf_event_open,sys_perf_event_open_wrapper) | 342 | SYSCALL(sys_perf_event_open,sys_perf_event_open,compat_sys_perf_event_open) |
343 | SYSCALL(sys_fanotify_init,sys_fanotify_init,sys_fanotify_init_wrapper) | 343 | SYSCALL(sys_fanotify_init,sys_fanotify_init,compat_sys_fanotify_init) |
344 | SYSCALL(sys_fanotify_mark,sys_fanotify_mark,compat_sys_fanotify_mark) | 344 | SYSCALL(sys_fanotify_mark,sys_fanotify_mark,compat_sys_fanotify_mark) |
345 | SYSCALL(sys_prlimit64,sys_prlimit64,sys_prlimit64_wrapper) | 345 | SYSCALL(sys_prlimit64,sys_prlimit64,compat_sys_prlimit64) |
346 | SYSCALL(sys_name_to_handle_at,sys_name_to_handle_at,sys_name_to_handle_at_wrapper) /* 335 */ | 346 | SYSCALL(sys_name_to_handle_at,sys_name_to_handle_at,compat_sys_name_to_handle_at) /* 335 */ |
347 | SYSCALL(sys_open_by_handle_at,sys_open_by_handle_at,compat_sys_open_by_handle_at) | 347 | SYSCALL(sys_open_by_handle_at,sys_open_by_handle_at,compat_sys_open_by_handle_at) |
348 | SYSCALL(sys_clock_adjtime,sys_clock_adjtime,compat_sys_clock_adjtime_wrapper) | 348 | SYSCALL(sys_clock_adjtime,sys_clock_adjtime,compat_sys_clock_adjtime) |
349 | SYSCALL(sys_syncfs,sys_syncfs,sys_syncfs_wrapper) | 349 | SYSCALL(sys_syncfs,sys_syncfs,compat_sys_syncfs) |
350 | SYSCALL(sys_setns,sys_setns,sys_setns_wrapper) | 350 | SYSCALL(sys_setns,sys_setns,compat_sys_setns) |
351 | SYSCALL(sys_process_vm_readv,sys_process_vm_readv,compat_sys_process_vm_readv_wrapper) /* 340 */ | 351 | SYSCALL(sys_process_vm_readv,sys_process_vm_readv,compat_sys_process_vm_readv) /* 340 */ |
352 | SYSCALL(sys_process_vm_writev,sys_process_vm_writev,compat_sys_process_vm_writev_wrapper) | 352 | SYSCALL(sys_process_vm_writev,sys_process_vm_writev,compat_sys_process_vm_writev) |
353 | SYSCALL(sys_ni_syscall,sys_s390_runtime_instr,sys_s390_runtime_instr_wrapper) | 353 | SYSCALL(sys_ni_syscall,sys_s390_runtime_instr,compat_sys_s390_runtime_instr) |
354 | SYSCALL(sys_kcmp,sys_kcmp,sys_kcmp_wrapper) | 354 | SYSCALL(sys_kcmp,sys_kcmp,compat_sys_kcmp) |
355 | SYSCALL(sys_finit_module,sys_finit_module,sys_finit_module_wrapper) | 355 | SYSCALL(sys_finit_module,sys_finit_module,compat_sys_finit_module) |
356 | SYSCALL(sys_sched_setattr,sys_sched_setattr,sys_sched_setattr_wrapper) /* 345 */ | 356 | SYSCALL(sys_sched_setattr,sys_sched_setattr,compat_sys_sched_setattr) /* 345 */ |
357 | SYSCALL(sys_sched_getattr,sys_sched_getattr,sys_sched_getattr_wrapper) | 357 | SYSCALL(sys_sched_getattr,sys_sched_getattr,compat_sys_sched_getattr) |
diff --git a/arch/x86/include/asm/unistd.h b/arch/x86/include/asm/unistd.h index c2a48139c340..3f556c6a0157 100644 --- a/arch/x86/include/asm/unistd.h +++ b/arch/x86/include/asm/unistd.h | |||
@@ -23,6 +23,9 @@ | |||
23 | # include <asm/unistd_64.h> | 23 | # include <asm/unistd_64.h> |
24 | # include <asm/unistd_64_x32.h> | 24 | # include <asm/unistd_64_x32.h> |
25 | # define __ARCH_WANT_COMPAT_SYS_TIME | 25 | # define __ARCH_WANT_COMPAT_SYS_TIME |
26 | # define __ARCH_WANT_COMPAT_SYS_GETDENTS64 | ||
27 | # define __ARCH_WANT_COMPAT_SYS_PREADV64 | ||
28 | # define __ARCH_WANT_COMPAT_SYS_PWRITEV64 | ||
26 | 29 | ||
27 | # endif | 30 | # endif |
28 | 31 | ||