Re: [PATCH 6/6] x86: signal: sys_rt_sigreturn() should usesigprocmask()

From: Oleg Nesterov
Date: Thu Apr 14 2011 - 16:16:42 EST


On 04/12, Matt Fleming wrote:
>
> On Mon, 11 Apr 2011 19:22:29 +0200
> Oleg Nesterov <oleg@xxxxxxxxxx> wrote:
>
> > Normally sys_rt_sigreturn() restores the old current->blocked which was
> > changed by handle_signal(), and unblocking is always fine.
> >
> > But the debugger or application itself can change frame->uc_sigmask and
> > thus we need sigprocmask()->retarget_shared_pending().
> >
> > Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>
>
> Reviewed-by: Matt Fleming <matt.fleming@xxxxxxxxxxxxxxx>

Thanks Matt.

> I'm just curious, have you actually seen this bug?

No, never.

But recently Nikita reported the problem which _might_ be explained by
this. see http://marc.info/?t=129732355500007 . Although it is quite
possible there is something else.

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/