On 3/4/20 4:53 AM, Oleg Nesterov wrote: > On 03/04, Oleg Nesterov wrote: >> >> arch/arm/common/bL_switcher.c:bL_switcher_thread(). Why does it do >> flush_signals() ? signal_pending() must not be possible. It seems that >> people think that wait_event_interruptible() or even schedule() in >> TASK_INTERRUPTIBLE state can lead to a pending signal but this is not >> true. Of course, I could miss allow_signal() in bL_switch_to() paths... > > Jens, could you explain flush_signals() in io_sq_thread() ? I actually don't think that one is needed - the only one that io_uring needs, and which is valid, is flushing signals for the io-wq worker as we use that for cancelation. In any case, both are kthreads. -- Jens Axboe