On Wed, Apr 24, 2019 at 08:52:38PM +0800, Zhenliang Wei wrote: > In the fixes commit, removing SIGKILL from each thread signal mask > and executing "goto fatal" directly will skip the call to > "trace_signal_deliver". At this point, the delivery tracking of the SIGKILL > signal will be inaccurate. > > Therefore, we need to add trace_signal_deliver before "goto fatal" > after executing sigdelset. > > Note: SEND_SIG_NOINFO matches the fact that SIGKILL doesn't have any info. > > Acked-by: Christian Brauner <christian@xxxxxxxxxx> I think we're supposed to use more Reviewed-bys so feel free (or Andrew) to change this to: Reviewed-by: Christian Brauner <christian@xxxxxxxxxx> > Reviewed-by: Oleg Nesterov <oleg@xxxxxxxxxx> > Cc: <stable@xxxxxxxxxxxxxxx> > Fixes: cf43a757fd4944 ("signal: Restore the stop PTRACE_EVENT_EXIT") > Reported-by: kbuild test robot <lkp@xxxxxxxxx> > Signed-off-by: Zhenliang Wei <weizhenliang@xxxxxxxxxx> > --- > kernel/signal.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/kernel/signal.c b/kernel/signal.c > index 227ba170298e..3edf526db7c6 100644 > --- a/kernel/signal.c > +++ b/kernel/signal.c > @@ -2441,6 +2441,8 @@ bool get_signal(struct ksignal *ksig) > if (signal_group_exit(signal)) { > ksig->info.si_signo = signr = SIGKILL; > sigdelset(¤t->pending.signal, SIGKILL); > + trace_signal_deliver(SIGKILL, SEND_SIG_NOINFO, > + &sighand->action[signr - 1]); Hm, sorry for being the really nitpicky person here. Just for the sake of consistency how about we do either: + trace_signal_deliver(SIGKILL, SEND_SIG_NOINFO, + &sighand->action[SIGKILL - 1]); or + trace_signal_deliver(signr, SEND_SIG_NOINFO, + &sighand->action[signr - 1]); I'm not going to argue about this though. Can just also leave it as is. Christian