Re: [BUG] signal: sighand unprotected when accessed by /proc

Oleg Nesterov
2014-06-04T16:32:51Z

On 06/03, Steven Rostedt wrote:
>
> On Tue, 3 Jun 2014 21:25:25 +0200
> Oleg Nesterov <oleg@redhat.com> wrote:
>
> > On 06/03, Steven Rostedt wrote:
> > >
> > > You know, this code could use some comments. I may send you a patch,
> > > because that __lock_task_sighand() is doing a lot of subtle things and
> > > there's not a single comment explaining it :-(
> >
> > Yes, agreed. Not only SLAB_DESTROY_BY_RCU is not obvious, local_irq_save()
> > is not clear at all. The latter already has a doc patch from Paul, I'll try
> > to add more comments on top once I see that patch in Linus's tree.
> >
> > But I would be happy if you send the patch ;)
> >
> > And this reminds me... I still think that __lock_task_sighand() should be
> > de-uglified. I already sent the patch, probably I'll resend it.
>
> I'd be happy to document the hell out of that function, but it sounds
> like you have some updates to it.

Paul has, I don't know where ;) That patch adds the comments to explain the
mysterious local_irq_disable() at the start. On top of another patch which
documents the subtle problems with preemption and rcu_read_unlock().

As for the cleanup I have, it is nowhere and I'll resend it later.

Oleg.