Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

sys_sgetmask/sys_ssetmask: add CONFIG_SGETMASK_SYSCALL

sys_sgetmask and sys_ssetmask are obsolete system calls no longer
supported in libc.

This patch replaces architecture related __ARCH_WANT_SYS_SGETMAX by expert
mode configuration.That option is enabled by default for those
architectures.

Signed-off-by: Fabian Frederick <fabf@skynet.be>
Cc: Steven Miao <realmz6@gmail.com>
Cc: Mikael Starvik <starvik@axis.com>
Cc: Jesper Nilsson <jesper.nilsson@axis.com>
Cc: David Howells <dhowells@redhat.com>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Michal Simek <monstr@monstr.eu>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: Koichi Yasutake <yasutake.koichi@jp.panasonic.com>
Cc: "James E.J. Bottomley" <jejb@parisc-linux.org>
Cc: Helge Deller <deller@gmx.de>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Greg Ungerer <gerg@uclinux.org>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

authored by

Fabian Frederick and committed by
Linus Torvalds
f6187769 72d09633

+14 -14
-1
arch/blackfin/include/asm/unistd.h
··· 12 12 #define __ARCH_WANT_SYS_ALARM 13 13 #define __ARCH_WANT_SYS_GETHOSTNAME 14 14 #define __ARCH_WANT_SYS_PAUSE 15 - #define __ARCH_WANT_SYS_SGETMASK 16 15 #define __ARCH_WANT_SYS_TIME 17 16 #define __ARCH_WANT_SYS_FADVISE64 18 17 #define __ARCH_WANT_SYS_GETPGRP
-1
arch/cris/include/asm/unistd.h
··· 15 15 #define __ARCH_WANT_SYS_GETHOSTNAME 16 16 #define __ARCH_WANT_SYS_IPC 17 17 #define __ARCH_WANT_SYS_PAUSE 18 - #define __ARCH_WANT_SYS_SGETMASK 19 18 #define __ARCH_WANT_SYS_SIGNAL 20 19 #define __ARCH_WANT_SYS_TIME 21 20 #define __ARCH_WANT_SYS_UTIME
-1
arch/frv/include/asm/unistd.h
··· 13 13 /* #define __ARCH_WANT_SYS_GETHOSTNAME */ 14 14 #define __ARCH_WANT_SYS_IPC 15 15 #define __ARCH_WANT_SYS_PAUSE 16 - /* #define __ARCH_WANT_SYS_SGETMASK */ 17 16 /* #define __ARCH_WANT_SYS_SIGNAL */ 18 17 #define __ARCH_WANT_SYS_TIME 19 18 #define __ARCH_WANT_SYS_UTIME
-1
arch/m68k/include/asm/unistd.h
··· 13 13 #define __ARCH_WANT_SYS_GETHOSTNAME 14 14 #define __ARCH_WANT_SYS_IPC 15 15 #define __ARCH_WANT_SYS_PAUSE 16 - #define __ARCH_WANT_SYS_SGETMASK 17 16 #define __ARCH_WANT_SYS_SIGNAL 18 17 #define __ARCH_WANT_SYS_TIME 19 18 #define __ARCH_WANT_SYS_UTIME
-1
arch/microblaze/include/asm/unistd.h
··· 19 19 #define __ARCH_WANT_SYS_ALARM 20 20 #define __ARCH_WANT_SYS_GETHOSTNAME 21 21 #define __ARCH_WANT_SYS_PAUSE 22 - #define __ARCH_WANT_SYS_SGETMASK 23 22 #define __ARCH_WANT_SYS_SIGNAL 24 23 #define __ARCH_WANT_SYS_TIME 25 24 #define __ARCH_WANT_SYS_UTIME
-1
arch/mips/include/asm/unistd.h
··· 29 29 #define __ARCH_WANT_SYS_GETHOSTNAME 30 30 #define __ARCH_WANT_SYS_IPC 31 31 #define __ARCH_WANT_SYS_PAUSE 32 - #define __ARCH_WANT_SYS_SGETMASK 33 32 #define __ARCH_WANT_SYS_UTIME 34 33 #define __ARCH_WANT_SYS_WAITPID 35 34 #define __ARCH_WANT_SYS_SOCKETCALL
-1
arch/mn10300/include/asm/unistd.h
··· 26 26 #define __ARCH_WANT_SYS_GETHOSTNAME 27 27 #define __ARCH_WANT_SYS_IPC 28 28 #define __ARCH_WANT_SYS_PAUSE 29 - #define __ARCH_WANT_SYS_SGETMASK 30 29 #define __ARCH_WANT_SYS_SIGNAL 31 30 #define __ARCH_WANT_SYS_TIME 32 31 #define __ARCH_WANT_SYS_UTIME
-1
arch/parisc/include/asm/unistd.h
··· 145 145 #define __ARCH_WANT_SYS_ALARM 146 146 #define __ARCH_WANT_SYS_GETHOSTNAME 147 147 #define __ARCH_WANT_SYS_PAUSE 148 - #define __ARCH_WANT_SYS_SGETMASK 149 148 #define __ARCH_WANT_SYS_SIGNAL 150 149 #define __ARCH_WANT_SYS_TIME 151 150 #define __ARCH_WANT_COMPAT_SYS_TIME
-1
arch/powerpc/include/asm/unistd.h
··· 29 29 #define __ARCH_WANT_SYS_GETHOSTNAME 30 30 #define __ARCH_WANT_SYS_IPC 31 31 #define __ARCH_WANT_SYS_PAUSE 32 - #define __ARCH_WANT_SYS_SGETMASK 33 32 #define __ARCH_WANT_SYS_SIGNAL 34 33 #define __ARCH_WANT_SYS_TIME 35 34 #define __ARCH_WANT_SYS_UTIME
-1
arch/sh/include/asm/unistd.h
··· 11 11 # define __ARCH_WANT_SYS_GETHOSTNAME 12 12 # define __ARCH_WANT_SYS_IPC 13 13 # define __ARCH_WANT_SYS_PAUSE 14 - # define __ARCH_WANT_SYS_SGETMASK 15 14 # define __ARCH_WANT_SYS_SIGNAL 16 15 # define __ARCH_WANT_SYS_TIME 17 16 # define __ARCH_WANT_SYS_UTIME
-1
arch/sparc/include/asm/unistd.h
··· 25 25 #define __ARCH_WANT_SYS_ALARM 26 26 #define __ARCH_WANT_SYS_GETHOSTNAME 27 27 #define __ARCH_WANT_SYS_PAUSE 28 - #define __ARCH_WANT_SYS_SGETMASK 29 28 #define __ARCH_WANT_SYS_SIGNAL 30 29 #define __ARCH_WANT_SYS_TIME 31 30 #define __ARCH_WANT_SYS_UTIME
-1
arch/x86/include/asm/unistd.h
··· 41 41 # define __ARCH_WANT_SYS_OLD_GETRLIMIT 42 42 # define __ARCH_WANT_SYS_OLD_UNAME 43 43 # define __ARCH_WANT_SYS_PAUSE 44 - # define __ARCH_WANT_SYS_SGETMASK 45 44 # define __ARCH_WANT_SYS_SIGNAL 46 45 # define __ARCH_WANT_SYS_SIGPENDING 47 46 # define __ARCH_WANT_SYS_SIGPROCMASK
+10
init/Kconfig
··· 1313 1313 help 1314 1314 This enables the legacy 16-bit UID syscall wrappers. 1315 1315 1316 + config SGETMASK_SYSCALL 1317 + bool "sgetmask/ssetmask syscalls support" if EXPERT 1318 + def_bool PARISC || MN10300 || BLACKFIN || M68K || PPC || MIPS || X86 || SPARC || CRIS || MICROBLAZE || SUPERH 1319 + ---help--- 1320 + sys_sgetmask and sys_ssetmask are obsolete system calls 1321 + no longer supported in libc but still enabled by default in some 1322 + architectures. 1323 + 1324 + If unsure, leave the default option here. 1325 + 1316 1326 config SYSFS_SYSCALL 1317 1327 bool "Sysfs syscall support" if EXPERT 1318 1328 default y
+2 -2
kernel/signal.c
··· 3496 3496 } 3497 3497 #endif 3498 3498 3499 - #ifdef __ARCH_WANT_SYS_SGETMASK 3499 + #ifdef CONFIG_SGETMASK_SYSCALL 3500 3500 3501 3501 /* 3502 3502 * For backwards compatibility. Functionality superseded by sigprocmask. ··· 3517 3517 3518 3518 return old; 3519 3519 } 3520 - #endif /* __ARCH_WANT_SGETMASK */ 3520 + #endif /* CONFIG_SGETMASK_SYSCALL */ 3521 3521 3522 3522 #ifdef __ARCH_WANT_SYS_SIGNAL 3523 3523 /*
+2
kernel/sys_ni.c
··· 135 135 cond_syscall(sys_setresuid16); 136 136 cond_syscall(sys_setreuid16); 137 137 cond_syscall(sys_setuid16); 138 + cond_syscall(sys_sgetmask); 139 + cond_syscall(sys_ssetmask); 138 140 cond_syscall(sys_vm86old); 139 141 cond_syscall(sys_vm86); 140 142 cond_syscall(sys_ipc);