diff options
author | Arnd Bergmann <arnd@arndb.de> | 2019-01-16 16:15:21 +0300 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2019-01-18 11:33:18 +0300 |
commit | fef747bab3c09b30b82f76a391ee0ed83d2d6965 (patch) | |
tree | 3a32716e2fd14f6c045240a9a82bdf28bb7b37f5 /arch/s390/kernel/syscalls | |
parent | 58fa4a410fc31afe08d0d0c6b6d8860c22ec17c2 (diff) | |
download | linux-fef747bab3c09b30b82f76a391ee0ed83d2d6965.tar.xz |
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.tbl | 38 |
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 |