On 04/04, Thomas Gleixner wrote:
>
> On Thu, Apr 04 2024 at 15:43, Oleg Nesterov wrote:
>
> > And this will happen with
> > or without the commit bcb7ee79029dca ("posix-timers: Prefer delivery of
> > signals to the current thread"). Any thread can dequeue a shared signal,
> > say, on return from interrupt.
> >
> > Just without that commit this "eventually" means A_LOT_OF_TIME
> > statistically.
>
> bcb7ee79029dca only directs the wakeup to current, but the signal is
> still queued in the process wide shared pending list. So the thread
> which sees sigpending() first will grab and deliver it to itself.This is what I tried to say above. > What we can actually test is the avoidance of waking up the main thread > by doing the following in the main thread: Hmm... I think it can be even simpler, > I'm testing a modification which implements something like the above and > the success condition is that the main thread does not return early from > nanosleep() and has no signal accounted. It survived 2000 iterations by > now. Yes, but please see a trivial test-case I sent you few minutes ago. Oleg.
