Re: [PATCH v3] signal: trace_signal_deliver when signal_group_exit

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 04/23, weizhenliang wrote:
>
> On Mon, Apr 22, 2019 at 11:25 PM Oleg Nesterov <oleg@xxxxxxxxxx> wrote:
> >On 04/22, Zhenliang Wei wrote:
> >>
> >> --- a/kernel/signal.c
> >> +++ b/kernel/signal.c
> >> @@ -2441,6 +2441,7 @@ bool get_signal(struct ksignal *ksig)
> >>  	if (signal_group_exit(signal)) {
> >>  		ksig->info.si_signo = signr = SIGKILL;
> >>  		sigdelset(&current->pending.signal, SIGKILL);
> >> +		trace_signal_deliver(SIGKILL, SEND_SIG_NOINFO, SIG_DFL);
> >>  		recalc_sigpending();
> >>  		goto fatal;
> >>  	}
> >
> >Reviewed-by: Oleg Nesterov <oleg@xxxxxxxxxx>
>
> Last time Oleg suggested using SIG_DFL as the third parameter, but its type is 'void (*)(int)', but not expected 'struct k_sigaction *'.

Yes I misread the signature of TRACE_EVENT(signal_deliver), and I thought you at
least compiled the kernel with your patch applied ;)

> How about
> 	trace_signal_deliver(SIGKILL, SEND_SIG_NOINFO, &sighand->action[signr - 1]);
> ?

sure, this should fix the problem.

Oleg.




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux