Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal
Pull signal handling cleanups from Al Viro: "This is the first pile; another one will come a bit later and will contain SYSCALL_DEFINE-related patches. - a bunch of signal-related syscalls (both native and compat) unified. - a bunch of compat syscalls switched to COMPAT_SYSCALL_DEFINE (fixing several potential problems with missing argument validation, while we are at it) - a lot of now-pointless wrappers killed - a couple of architectures (cris and hexagon) forgot to save altstack settings into sigframe, even though they used the (uninitialized) values in sigreturn; fixed. - microblaze fixes for delivery of multiple signals arriving at once - saner set of helpers for signal delivery introduced, several architectures switched to using those." * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal: (143 commits) x86: convert to ksignal sparc: convert to ksignal arm: switch to struct ksignal * passing alpha: pass k_sigaction and siginfo_t using ksignal pointer burying unused conditionals make do_sigaltstack() static arm64: switch to generic old sigaction() (compat-only) arm64: switch to generic compat rt_sigaction() arm64: switch compat to generic old sigsuspend arm64: switch to generic compat rt_sigqueueinfo() arm64: switch to generic compat rt_sigpending() arm64: switch to generic compat rt_sigprocmask() arm64: switch to generic sigaltstack sparc: switch to generic old sigsuspend sparc: COMPAT_SYSCALL_DEFINE does all sign-extension as well as SYSCALL_DEFINE sparc: kill sign-extending wrappers for native syscalls kill sparc32_open() sparc: switch to use of generic old sigaction sparc: switch sys_compat_rt_sigaction() to COMPAT_SYSCALL_DEFINE mips: switch to generic sys_fork() and sys_clone() ...
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
#ifndef _ASM_POWERPC_SIGNAL_H
|
||||
#define _ASM_POWERPC_SIGNAL_H
|
||||
|
||||
#define __ARCH_HAS_SA_RESTORER
|
||||
#include <uapi/asm/signal.h>
|
||||
|
||||
#endif /* _ASM_POWERPC_SIGNAL_H */
|
||||
|
@@ -5,11 +5,8 @@
|
||||
#include <linux/compiler.h>
|
||||
#include <linux/linkage.h>
|
||||
#include <linux/types.h>
|
||||
#include <asm/signal.h>
|
||||
|
||||
struct pt_regs;
|
||||
struct rtas_args;
|
||||
struct sigaction;
|
||||
|
||||
asmlinkage unsigned long sys_mmap(unsigned long addr, size_t len,
|
||||
unsigned long prot, unsigned long flags,
|
||||
@@ -17,20 +14,8 @@ asmlinkage unsigned long sys_mmap(unsigned long addr, size_t len,
|
||||
asmlinkage unsigned long sys_mmap2(unsigned long addr, size_t len,
|
||||
unsigned long prot, unsigned long flags,
|
||||
unsigned long fd, unsigned long pgoff);
|
||||
asmlinkage long sys_pipe(int __user *fildes);
|
||||
asmlinkage long sys_pipe2(int __user *fildes, int flags);
|
||||
asmlinkage long sys_rt_sigaction(int sig,
|
||||
const struct sigaction __user *act,
|
||||
struct sigaction __user *oact, size_t sigsetsize);
|
||||
asmlinkage long ppc64_personality(unsigned long personality);
|
||||
asmlinkage int ppc_rtas(struct rtas_args __user *uargs);
|
||||
asmlinkage time_t sys64_time(time_t __user * tloc);
|
||||
|
||||
asmlinkage long sys_rt_sigsuspend(sigset_t __user *unewset,
|
||||
size_t sigsetsize);
|
||||
asmlinkage long sys_sigaltstack(const stack_t __user *uss,
|
||||
stack_t __user *uoss, unsigned long r5, unsigned long r6,
|
||||
unsigned long r7, unsigned long r8, struct pt_regs *regs);
|
||||
|
||||
#endif /* __KERNEL__ */
|
||||
#endif /* __ASM_POWERPC_SYSCALLS_H */
|
||||
|
@@ -10,8 +10,8 @@ SYSCALL_SPU(read)
|
||||
SYSCALL_SPU(write)
|
||||
COMPAT_SYS_SPU(open)
|
||||
SYSCALL_SPU(close)
|
||||
COMPAT_SYS_SPU(waitpid)
|
||||
COMPAT_SYS_SPU(creat)
|
||||
SYSCALL_SPU(waitpid)
|
||||
SYSCALL_SPU(creat)
|
||||
SYSCALL_SPU(link)
|
||||
SYSCALL_SPU(unlink)
|
||||
COMPAT_SYS(execve)
|
||||
@@ -36,13 +36,13 @@ SYSCALL(pause)
|
||||
COMPAT_SYS(utime)
|
||||
SYSCALL(ni_syscall)
|
||||
SYSCALL(ni_syscall)
|
||||
COMPAT_SYS_SPU(access)
|
||||
COMPAT_SYS_SPU(nice)
|
||||
SYSCALL_SPU(access)
|
||||
SYSCALL_SPU(nice)
|
||||
SYSCALL(ni_syscall)
|
||||
SYSCALL_SPU(sync)
|
||||
COMPAT_SYS_SPU(kill)
|
||||
SYSCALL_SPU(kill)
|
||||
SYSCALL_SPU(rename)
|
||||
COMPAT_SYS_SPU(mkdir)
|
||||
SYSCALL_SPU(mkdir)
|
||||
SYSCALL_SPU(rmdir)
|
||||
SYSCALL_SPU(dup)
|
||||
SYSCALL_SPU(pipe)
|
||||
@@ -60,10 +60,10 @@ SYSCALL(ni_syscall)
|
||||
COMPAT_SYS_SPU(ioctl)
|
||||
COMPAT_SYS_SPU(fcntl)
|
||||
SYSCALL(ni_syscall)
|
||||
COMPAT_SYS_SPU(setpgid)
|
||||
SYSCALL_SPU(setpgid)
|
||||
SYSCALL(ni_syscall)
|
||||
SYSX(sys_ni_syscall,sys_olduname, sys_olduname)
|
||||
COMPAT_SYS_SPU(umask)
|
||||
SYSCALL_SPU(umask)
|
||||
SYSCALL_SPU(chroot)
|
||||
COMPAT_SYS(ustat)
|
||||
SYSCALL_SPU(dup2)
|
||||
@@ -72,23 +72,24 @@ SYSCALL_SPU(getpgrp)
|
||||
SYSCALL_SPU(setsid)
|
||||
SYS32ONLY(sigaction)
|
||||
SYSCALL_SPU(sgetmask)
|
||||
COMPAT_SYS_SPU(ssetmask)
|
||||
SYSCALL_SPU(ssetmask)
|
||||
SYSCALL_SPU(setreuid)
|
||||
SYSCALL_SPU(setregid)
|
||||
#define compat_sys_sigsuspend sys_sigsuspend
|
||||
SYS32ONLY(sigsuspend)
|
||||
COMPAT_SYS(sigpending)
|
||||
COMPAT_SYS_SPU(sethostname)
|
||||
SYSCALL_SPU(sethostname)
|
||||
COMPAT_SYS_SPU(setrlimit)
|
||||
COMPAT_SYS(old_getrlimit)
|
||||
COMPAT_SYS_SPU(getrusage)
|
||||
COMPAT_SYS_SPU(gettimeofday)
|
||||
COMPAT_SYS_SPU(settimeofday)
|
||||
COMPAT_SYS_SPU(getgroups)
|
||||
COMPAT_SYS_SPU(setgroups)
|
||||
SYSCALL_SPU(getgroups)
|
||||
SYSCALL_SPU(setgroups)
|
||||
SYSX(sys_ni_syscall,sys_ni_syscall,ppc_select)
|
||||
SYSCALL_SPU(symlink)
|
||||
OLDSYS(lstat)
|
||||
COMPAT_SYS_SPU(readlink)
|
||||
SYSCALL_SPU(readlink)
|
||||
SYSCALL(uselib)
|
||||
SYSCALL(swapon)
|
||||
SYSCALL(reboot)
|
||||
@@ -99,14 +100,14 @@ COMPAT_SYS_SPU(truncate)
|
||||
COMPAT_SYS_SPU(ftruncate)
|
||||
SYSCALL_SPU(fchmod)
|
||||
SYSCALL_SPU(fchown)
|
||||
COMPAT_SYS_SPU(getpriority)
|
||||
COMPAT_SYS_SPU(setpriority)
|
||||
SYSCALL_SPU(getpriority)
|
||||
SYSCALL_SPU(setpriority)
|
||||
SYSCALL(ni_syscall)
|
||||
COMPAT_SYS(statfs)
|
||||
COMPAT_SYS(fstatfs)
|
||||
SYSCALL(ni_syscall)
|
||||
COMPAT_SYS_SPU(socketcall)
|
||||
COMPAT_SYS_SPU(syslog)
|
||||
SYSCALL_SPU(syslog)
|
||||
COMPAT_SYS_SPU(setitimer)
|
||||
COMPAT_SYS_SPU(getitimer)
|
||||
COMPAT_SYS_SPU(newstat)
|
||||
@@ -124,7 +125,7 @@ COMPAT_SYS(ipc)
|
||||
SYSCALL_SPU(fsync)
|
||||
SYS32ONLY(sigreturn)
|
||||
PPC_SYS(clone)
|
||||
COMPAT_SYS_SPU(setdomainname)
|
||||
SYSCALL_SPU(setdomainname)
|
||||
SYSCALL_SPU(newuname)
|
||||
SYSCALL(ni_syscall)
|
||||
COMPAT_SYS_SPU(adjtimex)
|
||||
@@ -135,10 +136,10 @@ SYSCALL(init_module)
|
||||
SYSCALL(delete_module)
|
||||
SYSCALL(ni_syscall)
|
||||
SYSCALL(quotactl)
|
||||
COMPAT_SYS_SPU(getpgid)
|
||||
SYSCALL_SPU(getpgid)
|
||||
SYSCALL_SPU(fchdir)
|
||||
SYSCALL_SPU(bdflush)
|
||||
COMPAT_SYS(sysfs)
|
||||
SYSCALL_SPU(sysfs)
|
||||
SYSX_SPU(ppc64_personality,ppc64_personality,sys_personality)
|
||||
SYSCALL(ni_syscall)
|
||||
SYSCALL_SPU(setfsuid)
|
||||
@@ -150,21 +151,21 @@ SYSCALL_SPU(flock)
|
||||
SYSCALL_SPU(msync)
|
||||
COMPAT_SYS_SPU(readv)
|
||||
COMPAT_SYS_SPU(writev)
|
||||
COMPAT_SYS_SPU(getsid)
|
||||
SYSCALL_SPU(getsid)
|
||||
SYSCALL_SPU(fdatasync)
|
||||
COMPAT_SYS(sysctl)
|
||||
SYSCALL_SPU(mlock)
|
||||
SYSCALL_SPU(munlock)
|
||||
SYSCALL_SPU(mlockall)
|
||||
SYSCALL_SPU(munlockall)
|
||||
COMPAT_SYS_SPU(sched_setparam)
|
||||
COMPAT_SYS_SPU(sched_getparam)
|
||||
COMPAT_SYS_SPU(sched_setscheduler)
|
||||
COMPAT_SYS_SPU(sched_getscheduler)
|
||||
SYSCALL_SPU(sched_setparam)
|
||||
SYSCALL_SPU(sched_getparam)
|
||||
SYSCALL_SPU(sched_setscheduler)
|
||||
SYSCALL_SPU(sched_getscheduler)
|
||||
SYSCALL_SPU(sched_yield)
|
||||
COMPAT_SYS_SPU(sched_get_priority_max)
|
||||
COMPAT_SYS_SPU(sched_get_priority_min)
|
||||
SYSX_SPU(sys_sched_rr_get_interval,compat_sys_sched_rr_get_interval_wrapper,sys_sched_rr_get_interval)
|
||||
SYSCALL_SPU(sched_get_priority_max)
|
||||
SYSCALL_SPU(sched_get_priority_min)
|
||||
COMPAT_SYS_SPU(sched_rr_get_interval)
|
||||
COMPAT_SYS_SPU(nanosleep)
|
||||
SYSCALL_SPU(mremap)
|
||||
SYSCALL_SPU(setresuid)
|
||||
@@ -174,7 +175,7 @@ SYSCALL_SPU(poll)
|
||||
SYSCALL(ni_syscall)
|
||||
SYSCALL_SPU(setresgid)
|
||||
SYSCALL_SPU(getresgid)
|
||||
COMPAT_SYS_SPU(prctl)
|
||||
SYSCALL_SPU(prctl)
|
||||
COMPAT_SYS(rt_sigreturn)
|
||||
COMPAT_SYS(rt_sigaction)
|
||||
COMPAT_SYS(rt_sigprocmask)
|
||||
@@ -253,7 +254,7 @@ COMPAT_SYS_SPU(clock_gettime)
|
||||
COMPAT_SYS_SPU(clock_getres)
|
||||
COMPAT_SYS_SPU(clock_nanosleep)
|
||||
SYSX(ppc64_swapcontext,ppc32_swapcontext,ppc_swapcontext)
|
||||
COMPAT_SYS_SPU(tgkill)
|
||||
SYSCALL_SPU(tgkill)
|
||||
COMPAT_SYS_SPU(utimes)
|
||||
COMPAT_SYS_SPU(statfs64)
|
||||
COMPAT_SYS_SPU(fstatfs64)
|
||||
@@ -276,8 +277,8 @@ COMPAT_SYS(add_key)
|
||||
COMPAT_SYS(request_key)
|
||||
COMPAT_SYS(keyctl)
|
||||
COMPAT_SYS(waitid)
|
||||
COMPAT_SYS(ioprio_set)
|
||||
COMPAT_SYS(ioprio_get)
|
||||
SYSCALL(ioprio_set)
|
||||
SYSCALL(ioprio_get)
|
||||
SYSCALL(inotify_init)
|
||||
SYSCALL(inotify_add_watch)
|
||||
SYSCALL(inotify_rm_watch)
|
||||
|
@@ -44,17 +44,13 @@
|
||||
#define __ARCH_WANT_SYS_OLDUMOUNT
|
||||
#define __ARCH_WANT_SYS_SIGPENDING
|
||||
#define __ARCH_WANT_SYS_SIGPROCMASK
|
||||
#define __ARCH_WANT_SYS_RT_SIGACTION
|
||||
#define __ARCH_WANT_SYS_RT_SIGSUSPEND
|
||||
#ifdef CONFIG_PPC32
|
||||
#define __ARCH_WANT_OLD_STAT
|
||||
#endif
|
||||
#ifdef CONFIG_PPC64
|
||||
#define __ARCH_WANT_COMPAT_SYS_TIME
|
||||
#define __ARCH_WANT_COMPAT_SYS_RT_SIGSUSPEND
|
||||
#define __ARCH_WANT_SYS_NEWFSTATAT
|
||||
#define __ARCH_WANT_COMPAT_SYS_SENDFILE
|
||||
#define __ARCH_WANT_COMPAT_SYS_SCHED_RR_GET_INTERVAL
|
||||
#endif
|
||||
#define __ARCH_WANT_SYS_FORK
|
||||
#define __ARCH_WANT_SYS_VFORK
|
||||
|
Reference in New Issue
Block a user