Re: [ANNOUNCE] 3.18.7-rt2

From: Mike Galbraith
Date: Tue Feb 24 2015 - 12:50:25 EST


On Tue, 2015-02-24 at 13:19 -0300, Gustavo Bittencourt wrote:
> On Tue, Feb 24, 2015 at 10:41 AM, Mike Galbraith
> <umgwanakikbuti@xxxxxxxxx> wrote:
> > locking, ww_mutex: fix ww_mutex vs self-deadlock
> >
> > If the caller already holds the mutex, task_blocks_on_rt_mutex()
> > returns -EDEADLK, we proceed directly to rt_mutex_handle_deadlock()
> > where it's instant game over.
> >
> > Let ww_mutexes return EDEADLK/EALREADY as they want to instead.
> >
> > Signed-off-by: Mike Galbraith <umgwanakikbuti@xxxxxxxxx>
> > ---
> > kernel/locking/rtmutex.c | 17 +++++++++++------
> > 1 file changed, 11 insertions(+), 6 deletions(-)
> >
> > --- a/kernel/locking/rtmutex.c
> > +++ b/kernel/locking/rtmutex.c
>
> The deadlock returned after I applied this patch in v3.18.7-rt2. Here is my log:


Hrmph. I definitely want your patch to die ;-) It adds a whole new
dimension to ww_mutex that only now exists in -rt. That's not good. My
patchlet may not be perfect either, but it lets ww_mutex do that return
EALREADY business it's supposed to, vs going straight to while(1). We
can't have it both ways, so I suppose I'll fire up my old Q6600 box
(that doesn't have annoying GTX980 that my userspace can't deal with DRM
wise), and see if I can chase the nouveau thing down. I'm not all that
enthusiastic though, as there are or at least were other issues with
nouveau. Sebastian reported some completely _missing_ locking IIRC,
that led to his box exploding.

-Mike


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