]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/commitdiff
s390: remove bogus system call table entries
authorHeiko Carstens <heiko.carstens@de.ibm.com>
Thu, 14 Dec 2017 12:28:00 +0000 (13:28 +0100)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Tue, 23 Jan 2018 06:36:45 +0000 (07:36 +0100)
The 64 bit system call table contains three entries that come without
a matching NR_<name> entry in unistd.h.  In fact all three of them do
not make sense on 64 bit, but only for compat processes.

llseek and mmap2 were specifically introduced for 32 bit / compat
processes. getrlimit is wired up twice, so that only the entry that
comes with a corresponding NR_getrlimit needs to be kept.

The other entries can be removed, since it seems very unlikely that
this will break user space.

Reported-by: Hendrik Brueckner <brueckner@linux.vnet.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
arch/s390/kernel/syscalls.S

index f7fc633855534cbc0ab53c0d00f26aed59c1a1ad..5e0cd1650829ea2348d1b3b34c958831fbfa1c62 100644 (file)
@@ -85,7 +85,7 @@ SYSCALL(sys_sigsuspend,compat_sys_sigsuspend)
 SYSCALL(sys_sigpending,compat_sys_sigpending)
 SYSCALL(sys_sethostname,compat_sys_sethostname)
 SYSCALL(sys_setrlimit,compat_sys_setrlimit)            /* 75 */
-SYSCALL(sys_getrlimit,compat_sys_old_getrlimit)
+SYSCALL(sys_ni_syscall,compat_sys_old_getrlimit)
 SYSCALL(sys_getrusage,compat_sys_getrusage)
 SYSCALL(sys_gettimeofday,compat_sys_gettimeofday)
 SYSCALL(sys_settimeofday,compat_sys_settimeofday)
@@ -149,7 +149,7 @@ SYSCALL(sys_s390_personality,sys_s390_personality)
 NI_SYSCALL                                             /* for afs_syscall */
 SYSCALL(sys_ni_syscall,compat_sys_s390_setfsuid16)     /* old setfsuid16 syscall */
 SYSCALL(sys_ni_syscall,compat_sys_s390_setfsgid16)     /* old setfsgid16 syscall */
-SYSCALL(sys_llseek,compat_sys_llseek)                  /* 140 */
+SYSCALL(sys_ni_syscall,compat_sys_llseek)              /* 140 */
 SYSCALL(sys_getdents,compat_sys_getdents)
 SYSCALL(sys_select,compat_sys_select)
 SYSCALL(sys_flock,sys_flock)
@@ -201,7 +201,7 @@ NI_SYSCALL                                          /* streams1 */
 NI_SYSCALL                                             /* streams2 */
 SYSCALL(sys_vfork,sys_vfork)                           /* 190 */
 SYSCALL(sys_getrlimit,compat_sys_getrlimit)
-SYSCALL(sys_mmap2,compat_sys_s390_mmap2)
+SYSCALL(sys_ni_syscall,compat_sys_s390_mmap2)
 SYSCALL(sys_ni_syscall,compat_sys_s390_truncate64)
 SYSCALL(sys_ni_syscall,compat_sys_s390_ftruncate64)
 SYSCALL(sys_ni_syscall,compat_sys_s390_stat64)         /* 195 */