aboutsummaryrefslogtreecommitdiffstats
path: root/arch/s390
diff options
context:
space:
mode:
authorHeiko Carstens <heiko.carstens@de.ibm.com>2014-02-27 09:33:06 -0500
committerHeiko Carstens <heiko.carstens@de.ibm.com>2014-03-04 03:05:41 -0500
commitce5cef7edecd21b993c6019dae01a7ff1b453379 (patch)
tree6d9c68b1b59a67a535818d0f0bdea24beae432fd /arch/s390
parent86d295e1cc59b42d0d2f9fb5f7ff9b1894f90e0c (diff)
s390/compat: convert system call wrappers to C part 06
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Diffstat (limited to 'arch/s390')
-rw-r--r--arch/s390/kernel/compat_wrap.c10
-rw-r--r--arch/s390/kernel/compat_wrapper.S51
-rw-r--r--arch/s390/kernel/syscalls.S20
3 files changed, 20 insertions, 61 deletions
diff --git a/arch/s390/kernel/compat_wrap.c b/arch/s390/kernel/compat_wrap.c
index 558a1d485aa9..60813d5c743d 100644
--- a/arch/s390/kernel/compat_wrap.c
+++ b/arch/s390/kernel/compat_wrap.c
@@ -74,3 +74,13 @@ COMPAT_SYSCALL_WRAP2(bdflush, int, func, compat_long_t, data);
74COMPAT_SYSCALL_WRAP3(sysfs, int, option, compat_ulong_t, arg1, compat_ulong_t, arg2); 74COMPAT_SYSCALL_WRAP3(sysfs, int, option, compat_ulong_t, arg1, compat_ulong_t, arg2);
75COMPAT_SYSCALL_WRAP1(s390_personality, unsigned int, personality); 75COMPAT_SYSCALL_WRAP1(s390_personality, unsigned int, personality);
76COMPAT_SYSCALL_WRAP5(llseek, unsigned int, fd, u32, high, u32, low, loff_t __user *, result, unsigned int, whence); 76COMPAT_SYSCALL_WRAP5(llseek, unsigned int, fd, u32, high, u32, low, loff_t __user *, result, unsigned int, whence);
77COMPAT_SYSCALL_WRAP2(flock, unsigned int, fd, unsigned int, cmd);
78COMPAT_SYSCALL_WRAP3(msync, compat_ulong_t, start, compat_size_t, len, int, flags);
79COMPAT_SYSCALL_WRAP1(getsid, compat_pid_t, pid);
80COMPAT_SYSCALL_WRAP1(fdatasync, unsigned int, fd);
81COMPAT_SYSCALL_WRAP2(mlock, compat_ulong_t, start, compat_size_t, len);
82COMPAT_SYSCALL_WRAP2(munlock, compat_ulong_t, start, compat_size_t, len);
83COMPAT_SYSCALL_WRAP1(mlockall, int, flags);
84COMPAT_SYSCALL_WRAP2(sched_setparam, compat_pid_t, pid, struct sched_param __user *, param);
85COMPAT_SYSCALL_WRAP2(sched_getparam, compat_pid_t, pid, struct sched_param __user *, param);
86COMPAT_SYSCALL_WRAP3(sched_setscheduler, compat_pid_t, pid, int, policy, struct sched_param __user *, param);
diff --git a/arch/s390/kernel/compat_wrapper.S b/arch/s390/kernel/compat_wrapper.S
index 78b78991257b..707e37524d9f 100644
--- a/arch/s390/kernel/compat_wrapper.S
+++ b/arch/s390/kernel/compat_wrapper.S
@@ -142,17 +142,6 @@ ENTRY(compat_sys_select_wrapper)
142 llgtr %r6,%r6 # struct compat_timeval * 142 llgtr %r6,%r6 # struct compat_timeval *
143 jg compat_sys_select # branch to system call 143 jg compat_sys_select # branch to system call
144 144
145ENTRY(sys32_flock_wrapper)
146 llgfr %r2,%r2 # unsigned int
147 llgfr %r3,%r3 # unsigned int
148 jg sys_flock # branch to system call
149
150ENTRY(sys32_msync_wrapper)
151 llgfr %r2,%r2 # unsigned long
152 llgfr %r3,%r3 # size_t
153 lgfr %r4,%r4 # int
154 jg sys_msync # branch to system call
155
156ENTRY(compat_sys_readv_wrapper) 145ENTRY(compat_sys_readv_wrapper)
157 lgfr %r2,%r2 # int 146 lgfr %r2,%r2 # int
158 llgtr %r3,%r3 # const struct compat_iovec * 147 llgtr %r3,%r3 # const struct compat_iovec *
@@ -165,46 +154,6 @@ ENTRY(compat_sys_writev_wrapper)
165 llgfr %r4,%r4 # unsigned long 154 llgfr %r4,%r4 # unsigned long
166 jg compat_sys_writev # branch to system call 155 jg compat_sys_writev # branch to system call
167 156
168ENTRY(sys32_getsid_wrapper)
169 lgfr %r2,%r2 # pid_t
170 jg sys_getsid # branch to system call
171
172ENTRY(sys32_fdatasync_wrapper)
173 llgfr %r2,%r2 # unsigned int
174 jg sys_fdatasync # branch to system call
175
176ENTRY(sys32_mlock_wrapper)
177 llgfr %r2,%r2 # unsigned long
178 llgfr %r3,%r3 # size_t
179 jg sys_mlock # branch to system call
180
181ENTRY(sys32_munlock_wrapper)
182 llgfr %r2,%r2 # unsigned long
183 llgfr %r3,%r3 # size_t
184 jg sys_munlock # branch to system call
185
186ENTRY(sys32_mlockall_wrapper)
187 lgfr %r2,%r2 # int
188 jg sys_mlockall # branch to system call
189
190#sys32_munlockall_wrapper # void
191
192ENTRY(sys32_sched_setparam_wrapper)
193 lgfr %r2,%r2 # pid_t
194 llgtr %r3,%r3 # struct sched_param *
195 jg sys_sched_setparam # branch to system call
196
197ENTRY(sys32_sched_getparam_wrapper)
198 lgfr %r2,%r2 # pid_t
199 llgtr %r3,%r3 # struct sched_param *
200 jg sys_sched_getparam # branch to system call
201
202ENTRY(sys32_sched_setscheduler_wrapper)
203 lgfr %r2,%r2 # pid_t
204 lgfr %r3,%r3 # int
205 llgtr %r4,%r4 # struct sched_param *
206 jg sys_sched_setscheduler # branch to system call
207
208ENTRY(sys32_sched_getscheduler_wrapper) 157ENTRY(sys32_sched_getscheduler_wrapper)
209 lgfr %r2,%r2 # pid_t 158 lgfr %r2,%r2 # pid_t
210 jg sys_sched_getscheduler # branch to system call 159 jg sys_sched_getscheduler # branch to system call
diff --git a/arch/s390/kernel/syscalls.S b/arch/s390/kernel/syscalls.S
index 88c85e4300aa..c667bb13a4d7 100644
--- a/arch/s390/kernel/syscalls.S
+++ b/arch/s390/kernel/syscalls.S
@@ -151,20 +151,20 @@ SYSCALL(sys_setfsgid16,sys_ni_syscall,compat_sys_s390_setfsgid16) /* old setfsgi
151SYSCALL(sys_llseek,sys_llseek,compat_sys_llseek) /* 140 */ 151SYSCALL(sys_llseek,sys_llseek,compat_sys_llseek) /* 140 */
152SYSCALL(sys_getdents,sys_getdents,sys32_getdents_wrapper) 152SYSCALL(sys_getdents,sys_getdents,sys32_getdents_wrapper)
153SYSCALL(sys_select,sys_select,compat_sys_select_wrapper) 153SYSCALL(sys_select,sys_select,compat_sys_select_wrapper)
154SYSCALL(sys_flock,sys_flock,sys32_flock_wrapper) 154SYSCALL(sys_flock,sys_flock,compat_sys_flock)
155SYSCALL(sys_msync,sys_msync,sys32_msync_wrapper) 155SYSCALL(sys_msync,sys_msync,compat_sys_msync)
156SYSCALL(sys_readv,sys_readv,compat_sys_readv_wrapper) /* 145 */ 156SYSCALL(sys_readv,sys_readv,compat_sys_readv_wrapper) /* 145 */
157SYSCALL(sys_writev,sys_writev,compat_sys_writev_wrapper) 157SYSCALL(sys_writev,sys_writev,compat_sys_writev_wrapper)
158SYSCALL(sys_getsid,sys_getsid,sys32_getsid_wrapper) 158SYSCALL(sys_getsid,sys_getsid,compat_sys_getsid)
159SYSCALL(sys_fdatasync,sys_fdatasync,sys32_fdatasync_wrapper) 159SYSCALL(sys_fdatasync,sys_fdatasync,compat_sys_fdatasync)
160SYSCALL(sys_sysctl,sys_sysctl,compat_sys_sysctl) 160SYSCALL(sys_sysctl,sys_sysctl,compat_sys_sysctl)
161SYSCALL(sys_mlock,sys_mlock,sys32_mlock_wrapper) /* 150 */ 161SYSCALL(sys_mlock,sys_mlock,compat_sys_mlock) /* 150 */
162SYSCALL(sys_munlock,sys_munlock,sys32_munlock_wrapper) 162SYSCALL(sys_munlock,sys_munlock,compat_sys_munlock)
163SYSCALL(sys_mlockall,sys_mlockall,sys32_mlockall_wrapper) 163SYSCALL(sys_mlockall,sys_mlockall,compat_sys_mlockall)
164SYSCALL(sys_munlockall,sys_munlockall,sys_munlockall) 164SYSCALL(sys_munlockall,sys_munlockall,sys_munlockall)
165SYSCALL(sys_sched_setparam,sys_sched_setparam,sys32_sched_setparam_wrapper) 165SYSCALL(sys_sched_setparam,sys_sched_setparam,compat_sys_sched_setparam)
166SYSCALL(sys_sched_getparam,sys_sched_getparam,sys32_sched_getparam_wrapper) /* 155 */ 166SYSCALL(sys_sched_getparam,sys_sched_getparam,compat_sys_sched_getparam) /* 155 */
167SYSCALL(sys_sched_setscheduler,sys_sched_setscheduler,sys32_sched_setscheduler_wrapper) 167SYSCALL(sys_sched_setscheduler,sys_sched_setscheduler,compat_sys_sched_setscheduler)
168SYSCALL(sys_sched_getscheduler,sys_sched_getscheduler,sys32_sched_getscheduler_wrapper) 168SYSCALL(sys_sched_getscheduler,sys_sched_getscheduler,sys32_sched_getscheduler_wrapper)
169SYSCALL(sys_sched_yield,sys_sched_yield,sys_sched_yield) 169SYSCALL(sys_sched_yield,sys_sched_yield,sys_sched_yield)
170SYSCALL(sys_sched_get_priority_max,sys_sched_get_priority_max,sys32_sched_get_priority_max_wrapper) 170SYSCALL(sys_sched_get_priority_max,sys_sched_get_priority_max,sys32_sched_get_priority_max_wrapper)