aboutsummaryrefslogtreecommitdiffstats
path: root/arch/s390/kernel/syscalls
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2019-01-16 14:15:21 +0100
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2019-01-18 09:33:18 +0100
commitfef747bab3c09b30b82f76a391ee0ed83d2d6965 (patch)
tree3a32716e2fd14f6c045240a9a82bdf28bb7b37f5 /arch/s390/kernel/syscalls
parentipc: introduce ksys_ipc()/compat_ksys_ipc() for s390 (diff)
downloadlinux-dev-fef747bab3c09b30b82f76a391ee0ed83d2d6965.tar.xz
linux-dev-fef747bab3c09b30b82f76a391ee0ed83d2d6965.zip
s390: use generic UID16 implementation
s390 has an almost identical copy of the code in kernel/uid16.c. The problem here is that it requires calling the regular system calls, which the generic implementation handles correctly, but the internal interfaces are not declared in a global header for this. The best way forward here seems to be to just use the generic code and delete the s390 specific implementation. I keep the changes to uapi/asm/posix_types.h inside of an #ifdef check so user space does not observe any changes. As some of the system calls pass pointers, we also need wrappers in compat_wrapper.c, which I add for all calls with at least one argument. All those wrappers can be removed in a later step. Link: https://lore.kernel.org/lkml/20190116131527.2071570-4-arnd@arndb.de Signed-off-by: Arnd Bergmann <arnd@arndb.de> Reviewed-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/kernel/syscalls')
-rw-r--r--arch/s390/kernel/syscalls/syscall.tbl38
1 files changed, 19 insertions, 19 deletions
diff --git a/arch/s390/kernel/syscalls/syscall.tbl b/arch/s390/kernel/syscalls/syscall.tbl
index 022fc099b628..f878f74c42fd 100644
--- a/arch/s390/kernel/syscalls/syscall.tbl
+++ b/arch/s390/kernel/syscalls/syscall.tbl
@@ -23,13 +23,13 @@
13 32 time - compat_sys_time
14 common mknod sys_mknod compat_sys_mknod
15 common chmod sys_chmod compat_sys_chmod
-16 32 lchown - compat_sys_s390_lchown16
+16 32 lchown - compat_sys_lchown16
19 common lseek sys_lseek compat_sys_lseek
20 common getpid sys_getpid sys_getpid
21 common mount sys_mount compat_sys_mount
22 common umount sys_oldumount compat_sys_oldumount
-23 32 setuid - compat_sys_s390_setuid16
-24 32 getuid - compat_sys_s390_getuid16
+23 32 setuid - compat_sys_setuid16
+24 32 getuid - sys_getuid16
25 32 stime - compat_sys_stime
26 common ptrace sys_ptrace compat_sys_ptrace
27 common alarm sys_alarm sys_alarm
@@ -46,11 +46,11 @@
42 common pipe sys_pipe compat_sys_pipe
43 common times sys_times compat_sys_times
45 common brk sys_brk compat_sys_brk
-46 32 setgid - compat_sys_s390_setgid16
-47 32 getgid - compat_sys_s390_getgid16
+46 32 setgid - compat_sys_setgid16
+47 32 getgid - sys_getgid16
48 common signal sys_signal compat_sys_signal
-49 32 geteuid - compat_sys_s390_geteuid16
-50 32 getegid - compat_sys_s390_getegid16
+49 32 geteuid - sys_geteuid16
+50 32 getegid - sys_getegid16
51 common acct sys_acct compat_sys_acct
52 common umount2 sys_umount compat_sys_umount
54 common ioctl sys_ioctl compat_sys_ioctl
@@ -64,8 +64,8 @@
65 common getpgrp sys_getpgrp sys_getpgrp
66 common setsid sys_setsid sys_setsid
67 common sigaction sys_sigaction compat_sys_sigaction
-70 32 setreuid - compat_sys_s390_setreuid16
-71 32 setregid - compat_sys_s390_setregid16
+70 32 setreuid - compat_sys_setreuid16
+71 32 setregid - compat_sys_setregid16
72 common sigsuspend sys_sigsuspend compat_sys_sigsuspend
73 common sigpending sys_sigpending compat_sys_sigpending
74 common sethostname sys_sethostname compat_sys_sethostname
@@ -74,8 +74,8 @@
77 common getrusage sys_getrusage compat_sys_getrusage
78 common gettimeofday sys_gettimeofday compat_sys_gettimeofday
79 common settimeofday sys_settimeofday compat_sys_settimeofday
-80 32 getgroups - compat_sys_s390_getgroups16
-81 32 setgroups - compat_sys_s390_setgroups16
+80 32 getgroups - compat_sys_getgroups16
+81 32 setgroups - compat_sys_setgroups16
83 common symlink sys_symlink compat_sys_symlink
85 common readlink sys_readlink compat_sys_readlink
86 common uselib sys_uselib compat_sys_uselib
@@ -87,7 +87,7 @@
92 common truncate sys_truncate compat_sys_truncate
93 common ftruncate sys_ftruncate compat_sys_ftruncate
94 common fchmod sys_fchmod sys_fchmod
-95 32 fchown - compat_sys_s390_fchown16
+95 32 fchown - compat_sys_fchown16
96 common getpriority sys_getpriority sys_getpriority
97 common setpriority sys_setpriority sys_setpriority
99 common statfs sys_statfs compat_sys_statfs
@@ -126,8 +126,8 @@
135 common sysfs sys_sysfs compat_sys_sysfs
136 common personality sys_s390_personality sys_s390_personality
137 common afs_syscall - -
-138 32 setfsuid - compat_sys_s390_setfsuid16
-139 32 setfsgid - compat_sys_s390_setfsgid16
+138 32 setfsuid - compat_sys_setfsuid16
+139 32 setfsgid - compat_sys_setfsgid16
140 32 _llseek - compat_sys_llseek
141 common getdents sys_getdents compat_sys_getdents
142 32 _newselect - compat_sys_select
@@ -153,13 +153,13 @@
161 common sched_rr_get_interval sys_sched_rr_get_interval compat_sys_sched_rr_get_interval
162 common nanosleep sys_nanosleep compat_sys_nanosleep
163 common mremap sys_mremap compat_sys_mremap
-164 32 setresuid - compat_sys_s390_setresuid16
-165 32 getresuid - compat_sys_s390_getresuid16
+164 32 setresuid - compat_sys_setresuid16
+165 32 getresuid - compat_sys_getresuid16
167 common query_module - -
168 common poll sys_poll compat_sys_poll
169 common nfsservctl - -
-170 32 setresgid - compat_sys_s390_setresgid16
-171 32 getresgid - compat_sys_s390_getresgid16
+170 32 setresgid - compat_sys_setresgid16
+171 32 getresgid - compat_sys_getresgid16
172 common prctl sys_prctl compat_sys_prctl
173 common rt_sigreturn sys_rt_sigreturn compat_sys_rt_sigreturn
174 common rt_sigaction sys_rt_sigaction compat_sys_rt_sigaction
@@ -170,7 +170,7 @@
179 common rt_sigsuspend sys_rt_sigsuspend compat_sys_rt_sigsuspend
180 common pread64 sys_pread64 compat_sys_s390_pread64
181 common pwrite64 sys_pwrite64 compat_sys_s390_pwrite64
-182 32 chown - compat_sys_s390_chown16
+182 32 chown - compat_sys_chown16
183 common getcwd sys_getcwd compat_sys_getcwd
184 common capget sys_capget compat_sys_capget
185 common capset sys_capset compat_sys_capset