diff options
author | Heiko Carstens <heiko.carstens@de.ibm.com> | 2014-02-26 04:58:09 -0500 |
---|---|---|
committer | Heiko Carstens <heiko.carstens@de.ibm.com> | 2014-03-04 03:05:36 -0500 |
commit | e723e0cc17f8d8573b19a809277d81cecdd6e92b (patch) | |
tree | dc0d38b2a992df7299cda1ac64c2bfff73d7caa4 | |
parent | 4ca2ea58c8421784bdad43b05e9939549e4d34e9 (diff) |
s390/compat: convert to COMPAT_SYSCALL_DEFINEx part 4
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
-rw-r--r-- | arch/s390/kernel/compat_linux.c | 15 | ||||
-rw-r--r-- | arch/s390/kernel/compat_linux.h | 11 | ||||
-rw-r--r-- | arch/s390/kernel/compat_wrapper.S | 14 | ||||
-rw-r--r-- | arch/s390/kernel/syscalls.S | 10 |
4 files changed, 16 insertions, 34 deletions
diff --git a/arch/s390/kernel/compat_linux.c b/arch/s390/kernel/compat_linux.c index 65b5acbd375b..79571343bc75 100644 --- a/arch/s390/kernel/compat_linux.c +++ b/arch/s390/kernel/compat_linux.c | |||
@@ -269,22 +269,22 @@ COMPAT_SYSCALL_DEFINE2(s390_setgroups16, int, gidsetsize, u16 __user *, grouplis | |||
269 | return retval; | 269 | return retval; |
270 | } | 270 | } |
271 | 271 | ||
272 | asmlinkage long sys32_getuid16(void) | 272 | COMPAT_SYSCALL_DEFINE0(s390_getuid16) |
273 | { | 273 | { |
274 | return high2lowuid(from_kuid_munged(current_user_ns(), current_uid())); | 274 | return high2lowuid(from_kuid_munged(current_user_ns(), current_uid())); |
275 | } | 275 | } |
276 | 276 | ||
277 | asmlinkage long sys32_geteuid16(void) | 277 | COMPAT_SYSCALL_DEFINE0(s390_geteuid16) |
278 | { | 278 | { |
279 | return high2lowuid(from_kuid_munged(current_user_ns(), current_euid())); | 279 | return high2lowuid(from_kuid_munged(current_user_ns(), current_euid())); |
280 | } | 280 | } |
281 | 281 | ||
282 | asmlinkage long sys32_getgid16(void) | 282 | COMPAT_SYSCALL_DEFINE0(s390_getgid16) |
283 | { | 283 | { |
284 | return high2lowgid(from_kgid_munged(current_user_ns(), current_gid())); | 284 | return high2lowgid(from_kgid_munged(current_user_ns(), current_gid())); |
285 | } | 285 | } |
286 | 286 | ||
287 | asmlinkage long sys32_getegid16(void) | 287 | COMPAT_SYSCALL_DEFINE0(s390_getegid16) |
288 | { | 288 | { |
289 | return high2lowgid(from_kgid_munged(current_user_ns(), current_egid())); | 289 | return high2lowgid(from_kgid_munged(current_user_ns(), current_egid())); |
290 | } | 290 | } |
@@ -299,12 +299,9 @@ COMPAT_SYSCALL_DEFINE5(s390_ipc, uint, call, int, first, compat_ulong_t, second, | |||
299 | } | 299 | } |
300 | #endif | 300 | #endif |
301 | 301 | ||
302 | 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) |
303 | { | 303 | { |
304 | if ((int)high < 0) | 304 | return sys_truncate(path, (unsigned long)high << 32 | low); |
305 | return -EINVAL; | ||
306 | else | ||
307 | return sys_truncate(path, (high << 32) | low); | ||
308 | } | 305 | } |
309 | 306 | ||
310 | asmlinkage long sys32_ftruncate64(unsigned int fd, unsigned long high, unsigned long low) | 307 | asmlinkage long sys32_ftruncate64(unsigned int fd, unsigned long high, unsigned long low) |
diff --git a/arch/s390/kernel/compat_linux.h b/arch/s390/kernel/compat_linux.h index 766867230d26..3e03325d0e95 100644 --- a/arch/s390/kernel/compat_linux.h +++ b/arch/s390/kernel/compat_linux.h | |||
@@ -91,12 +91,11 @@ long compat_sys_s390_setfsuid16(u16 uid); | |||
91 | long compat_sys_s390_setfsgid16(u16 gid); | 91 | long compat_sys_s390_setfsgid16(u16 gid); |
92 | long compat_sys_s390_getgroups16(int gidsetsize, u16 __user *grouplist); | 92 | long compat_sys_s390_getgroups16(int gidsetsize, u16 __user *grouplist); |
93 | long compat_sys_s390_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); | ||
100 | long sys32_ftruncate64(unsigned int fd, unsigned long high, unsigned long low); | 99 | long sys32_ftruncate64(unsigned int fd, unsigned long high, unsigned long low); |
101 | long sys32_init_module(void __user *umod, unsigned long len, | 100 | long sys32_init_module(void __user *umod, unsigned long len, |
102 | const char __user *uargs); | 101 | const char __user *uargs); |
diff --git a/arch/s390/kernel/compat_wrapper.S b/arch/s390/kernel/compat_wrapper.S index 6c55523acf29..9128f7b87e80 100644 --- a/arch/s390/kernel/compat_wrapper.S +++ b/arch/s390/kernel/compat_wrapper.S | |||
@@ -75,8 +75,6 @@ ENTRY(sys32_oldumount_wrapper) | |||
75 | llgtr %r2,%r2 # char * | 75 | llgtr %r2,%r2 # char * |
76 | jg sys_oldumount # branch to system call | 76 | jg sys_oldumount # branch to system call |
77 | 77 | ||
78 | #sys32_getuid16_wrapper # void | ||
79 | |||
80 | ENTRY(sys32_ptrace_wrapper) | 78 | ENTRY(sys32_ptrace_wrapper) |
81 | lgfr %r2,%r2 # long | 79 | lgfr %r2,%r2 # long |
82 | lgfr %r3,%r3 # long | 80 | lgfr %r3,%r3 # long |
@@ -139,17 +137,11 @@ ENTRY(sys32_brk_wrapper) | |||
139 | llgtr %r2,%r2 # unsigned long | 137 | llgtr %r2,%r2 # unsigned long |
140 | jg sys_brk # branch to system call | 138 | jg sys_brk # branch to system call |
141 | 139 | ||
142 | #sys32_getgid16_wrapper # void | ||
143 | |||
144 | ENTRY(sys32_signal_wrapper) | 140 | ENTRY(sys32_signal_wrapper) |
145 | lgfr %r2,%r2 # int | 141 | lgfr %r2,%r2 # int |
146 | llgtr %r3,%r3 # __sighandler_t | 142 | llgtr %r3,%r3 # __sighandler_t |
147 | jg sys_signal | 143 | jg sys_signal |
148 | 144 | ||
149 | #sys32_geteuid16_wrapper # void | ||
150 | |||
151 | #sys32_getegid16_wrapper # void | ||
152 | |||
153 | ENTRY(sys32_acct_wrapper) | 145 | ENTRY(sys32_acct_wrapper) |
154 | llgtr %r2,%r2 # char * | 146 | llgtr %r2,%r2 # char * |
155 | jg sys_acct # branch to system call | 147 | jg sys_acct # branch to system call |
@@ -577,12 +569,6 @@ ENTRY(sys32_capset_wrapper) | |||
577 | 569 | ||
578 | #sys32_vfork_wrapper # done in vfork_glue | 570 | #sys32_vfork_wrapper # done in vfork_glue |
579 | 571 | ||
580 | ENTRY(sys32_truncate64_wrapper) | ||
581 | llgtr %r2,%r2 # const char * | ||
582 | llgfr %r3,%r3 # unsigned long | ||
583 | llgfr %r4,%r4 # unsigned long | ||
584 | jg sys32_truncate64 # branch to system call | ||
585 | |||
586 | ENTRY(sys32_ftruncate64_wrapper) | 572 | ENTRY(sys32_ftruncate64_wrapper) |
587 | llgfr %r2,%r2 # unsigned int | 573 | llgfr %r2,%r2 # unsigned int |
588 | llgfr %r3,%r3 # unsigned long | 574 | llgfr %r3,%r3 # unsigned long |
diff --git a/arch/s390/kernel/syscalls.S b/arch/s390/kernel/syscalls.S index bdba42a35ec6..fa17cefe40e2 100644 --- a/arch/s390/kernel/syscalls.S +++ b/arch/s390/kernel/syscalls.S | |||
@@ -32,7 +32,7 @@ SYSCALL(sys_getpid,sys_getpid,sys_getpid) /* 20 */ | |||
32 | SYSCALL(sys_mount,sys_mount,sys32_mount_wrapper) | 32 | SYSCALL(sys_mount,sys_mount,sys32_mount_wrapper) |
33 | SYSCALL(sys_oldumount,sys_oldumount,sys32_oldumount_wrapper) | 33 | SYSCALL(sys_oldumount,sys_oldumount,sys32_oldumount_wrapper) |
34 | SYSCALL(sys_setuid16,sys_ni_syscall,compat_sys_s390_setuid16) /* 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,sys32_stime_wrapper) /* 25 old stime syscall */ |
37 | SYSCALL(sys_ptrace,sys_ptrace,sys32_ptrace_wrapper) | 37 | SYSCALL(sys_ptrace,sys_ptrace,sys32_ptrace_wrapper) |
38 | SYSCALL(sys_alarm,sys_alarm,sys32_alarm_wrapper) | 38 | SYSCALL(sys_alarm,sys_alarm,sys32_alarm_wrapper) |
@@ -55,10 +55,10 @@ SYSCALL(sys_times,sys_times,compat_sys_times_wrapper) | |||
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,sys32_brk_wrapper) /* 45 */ |
57 | SYSCALL(sys_setgid16,sys_ni_syscall,compat_sys_s390_setgid16) /* 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,sys32_signal_wrapper) |
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,sys32_acct_wrapper) |
63 | SYSCALL(sys_umount,sys_umount,sys32_umount_wrapper) | 63 | SYSCALL(sys_umount,sys_umount,sys32_umount_wrapper) |
64 | NI_SYSCALL /* old lock syscall */ | 64 | NI_SYSCALL /* old lock syscall */ |
@@ -201,7 +201,7 @@ 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_wrapper) |
203 | SYSCALL(sys_mmap2,sys_mmap2,sys32_mmap2_wrapper) | 203 | SYSCALL(sys_mmap2,sys_mmap2,sys32_mmap2_wrapper) |
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,sys32_ftruncate64_wrapper) |
206 | SYSCALL(sys_stat64,sys_ni_syscall,sys32_stat64_wrapper) /* 195 */ | 206 | SYSCALL(sys_stat64,sys_ni_syscall,sys32_stat64_wrapper) /* 195 */ |
207 | SYSCALL(sys_lstat64,sys_ni_syscall,sys32_lstat64_wrapper) | 207 | SYSCALL(sys_lstat64,sys_ni_syscall,sys32_lstat64_wrapper) |