On Thu, Oct 15 2020 at 07:17, Jens Axboe wrote: > --- a/arch/x86/kernel/signal.c > +++ b/arch/x86/kernel/signal.c > @@ -808,7 +808,10 @@ void arch_do_signal(struct pt_regs *regs, unsigned long ti_work) > { > struct ksignal ksig; > > - if (get_signal(&ksig)) { > + if (ti_work & _TIF_NOTIFY_SIGNAL) > + tracehook_notify_signal(); > + > + if ((ti_work & _TIF_SIGPENDING) && get_signal(&ksig)) { > /* Whee! Actually deliver the signal. */ > handle_signal(&ksig, regs); > return; Instead of adding this to every architectures signal magic, we can handle TIF_NOTIFY_SIGNAL in the core code: static void handle_singal_work(ti_work, regs) { if (ti_work & _TIF_NOTIFY_SIGNAL) tracehook_notify_signal(); arch_do_signal(ti_work, regs); } loop { if (ti_work & (SIGPENDING | NOTIFY_SIGNAL)) handle_signal_work(ti_work, regs); } Hmm? Thanks, tglx