Re: safety of *mutex_unlock() (Was: [BUG] signal: sighand unprotected when accessed by /proc)

Thomas Gleixner
2014-06-10T20:05:29Z

On Tue, 10 Jun 2014, Steven Rostedt wrote:
> On Tue, 10 Jun 2014 20:08:37 +0200 (CEST)
> Thomas Gleixner <tglx@linutronix.de> wrote:
>
>
> > > Perhaps it could simply do ->owner = RT_MUTEX_HAS_WAITERS to make this more
> > > clear...
> >
> > Good point. The new owner can cleanup the mess.
> >
>
> I thought about this too. It should work with the added overhead that
> every time we go into the unlock slow path, we guarantee that the next
> lock will go into the lock slowpath.
>
> As long as the new acquired lock does a fast unlock, then we get out of
> this spiral.

The alternative solution is to document WHY this is safe. I think I
prefer that one :)

Thanks,

tglx