Re: [RCU] zombie task hung in synchronize_rcu_expedited

From: Oleg Nesterov
Date: Fri Jun 07 2024 - 17:24:59 EST


On 06/07, Wei Fu wrote:
>
> Yes. I applied your patch on v5.15.160 and run reproducer for 5 hours.
> I didn't see this issue. Currently, it looks good!. I will continue that test
> on this weekend.

Great, thanks!

> In last reply, you mentioned TIF_NOTIFY_SIGNAL related to busy-wait loop.
> Would you please explain why flag-clear works here?

Sure, I'll write the changelog with the explanation and send the patch on
weekend. If it passes your testing.

But in short this is very simple. zap_pid_ns_processes() clears TIF_SIGPENDING
exactly because we want to avoid the busy-wait loop. But today this is not
enough to make signal_pending() return F, see
include/linux/sched/signal.h:signal_pending().

Thanks,

Oleg.