Re: [PATCH 4/4] signalfd: make it group-wide, fix posix-timers scheduling

From: Oleg Nesterov
Date: Mon Aug 13 2007 - 15:15:16 EST


On 08/12, Oleg Nesterov wrote:
>
> Untested, user visible change.
>
> With this patch any thread can dequeue its own private signals via signalfd,
> even if it was created by another sub-thread.
>
> To do so, we pass "current" to dequeue_signal() if the caller is from the same
> thread group. This also fixes the scheduling of posix timers broken by the
> previous patch.
>
> If the caller doesn't belong to this thread group, we can't handle __SI_TIMER
> case properly anyway. Perhaps we should forbid the cross-process signalfd usage
> and convert ctx->tsk to ctx->sighand.

Sorry, the patch is not complete. I forgot about signalfd_poll() and somehow I
forgot to actually tweak de_thread(). I'll send a new one tomorrow.

Something should be done for 2.6.23, imho.

Oleg.

-
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/