Re: [PATCH/RFC] signal races/bugs, losing TIF_SIGPENDING and otherwoes

From: Benjamin Herrenschmidt
Date: Tue Jun 05 2007 - 03:28:00 EST


On Mon, 2007-06-04 at 23:09 -0700, Nicholas Miell wrote:
> signalfd() doesn't deliver thread-targeted signals to the wrong
> threads,
> does it?
>
> Hmm.
>
> It looks like reading from a signalfd will give you either
> process-global signals or the thread-specific signals that are
> targeted
> towards the thread that originally created the signalfd (regardless of
> which thread actually calls read()).
>
> Which is weird, to say the least. Definitely needs to be noted in the
> man page, which doesn't seem to exist yet.
>
> Is there a reason why signalfd() doesn't behave like regular signals
> in
> this regard?

It's worse than that ... by being able to call dequeue_signal from the
contxt of another thread than the one dequeuing from.

Ben.


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/