wants_signal() already behaves like a boolean function. Let's actually declare it as such too.
Signed-off-by: Christian Brauner <christ...@brauner.io> --- v1->v2: * unchanged v0->v1: * patch added --- kernel/signal.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/kernel/signal.c b/kernel/signal.c index dd32a1ce58e2..8ee3e4a57117 100644 --- a/kernel/signal.c +++ b/kernel/signal.c @@ -883,16 +883,20 @@ static bool prepare_signal(int sig, struct task_struct *p, bool force) * as soon as they're available, so putting the signal on the shared queue * will be equivalent to sending it to one such thread. */ -static inline int wants_signal(int sig, struct task_struct *p) +static inline bool wants_signal(int sig, struct task_struct *p) { if (sigismember(&p->blocked, sig)) - return 0; + return false; + if (p->flags & PF_EXITING) - return 0; + return false; + if (sig == SIGKILL) - return 1; + return true; + if (task_is_stopped_or_traced(p)) - return 0; + return false; + return task_curr(p) || !signal_pending(p); } -- 2.17.0