mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-01 10:45:49 +00:00
signal: make force_sigsegv() void
Patch series "signal: refactor some functions", v3. This series refactors a bunch of functions in signal.c to simplify parts of the code. The greatest single change is declaring the static do_sigpending() helper as void which makes it possible to remove a bunch of unnecessary checks in the syscalls later on. This patch (of 17): force_sigsegv() returned 0 unconditionally so it doesn't make sense to have it return at all. In addition, there are no callers that check force_sigsegv()'s return value. Link: http://lkml.kernel.org/r/20180602103653.18181-2-christian@brauner.io Signed-off-by: Christian Brauner <christian@brauner.io> Reviewed-by: Andrew Morton <akpm@linux-foundation.org> Cc: Eric W. Biederman <ebiederm@xmission.com> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: Ingo Molnar <mingo@kernel.org> Cc: James Morris <james.morris@microsoft.com> Cc: Kees Cook <keescook@chromium.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Stephen Smalley <sds@tycho.nsa.gov> Cc: Al Viro <viro@zeniv.linux.org.uk> Cc: Oleg Nesterov <oleg@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
f423420c23
commit
52cba1a274
@ -314,7 +314,7 @@ int force_sig_pkuerr(void __user *addr, u32 pkey);
|
||||
int force_sig_ptrace_errno_trap(int errno, void __user *addr);
|
||||
|
||||
extern int send_sig_info(int, struct siginfo *, struct task_struct *);
|
||||
extern int force_sigsegv(int, struct task_struct *);
|
||||
extern void force_sigsegv(int sig, struct task_struct *p);
|
||||
extern int force_sig_info(int, struct siginfo *, struct task_struct *);
|
||||
extern int __kill_pgrp_info(int sig, struct siginfo *info, struct pid *pgrp);
|
||||
extern int kill_pid_info(int sig, struct siginfo *info, struct pid *pid);
|
||||
|
@ -1458,8 +1458,7 @@ send_sig(int sig, struct task_struct *p, int priv)
|
||||
return send_sig_info(sig, __si_special(priv), p);
|
||||
}
|
||||
|
||||
void
|
||||
force_sig(int sig, struct task_struct *p)
|
||||
void force_sig(int sig, struct task_struct *p)
|
||||
{
|
||||
force_sig_info(sig, SEND_SIG_PRIV, p);
|
||||
}
|
||||
@ -1470,8 +1469,7 @@ force_sig(int sig, struct task_struct *p)
|
||||
* the problem was already a SIGSEGV, we'll want to
|
||||
* make sure we don't even try to deliver the signal..
|
||||
*/
|
||||
int
|
||||
force_sigsegv(int sig, struct task_struct *p)
|
||||
void force_sigsegv(int sig, struct task_struct *p)
|
||||
{
|
||||
if (sig == SIGSEGV) {
|
||||
unsigned long flags;
|
||||
@ -1480,7 +1478,6 @@ force_sigsegv(int sig, struct task_struct *p)
|
||||
spin_unlock_irqrestore(&p->sighand->siglock, flags);
|
||||
}
|
||||
force_sig(SIGSEGV, p);
|
||||
return 0;
|
||||
}
|
||||
|
||||
int force_sig_fault(int sig, int code, void __user *addr
|
||||
|
Loading…
Reference in New Issue
Block a user