Re: tty: AB-BA between tty->legacy_mutex and devpts_mutex

From: Alan Cox
Date: Mon May 28 2012 - 15:34:27 EST


On Mon, 28 May 2012 21:02:15 +0200 (CEST)
Jiri Kosina <jkosina@xxxxxxx> wrote:

> On Mon, 28 May 2012, Jiri Kosina wrote:
>
> > ======================================================
> > [ INFO: possible circular locking dependency detected ]
> > 3.4.0-08219-g238d69d #11 Not tainted
> > -------------------------------------------------------
> > blogd/265 is trying to acquire lock:
> > (devpts_mutex){+.+.+.}, at: [<ffffffff8134d696>]
> > pty_close+0x166/0x190
> >
> > but task is already holding lock:
> > (&tty->legacy_mutex){+.+.+.}, at: [<ffffffff8150f632>]
> > tty_lock+0x22/0x29
> >
> > which lock already depends on the new lock.
>
> [ ... snip ... ]
>
> > This deadlock scenario doesn't really seem realistic, as it's
> > between open()/close(). Not being really familiar with tty layer, I
> > am not sure what the proper lock ordering in this case is, I am
> > just reporting for you guys to decide how to get rid of this one.
>
> This seems to have been caused by
>
> commit d739e65bb21d34f0f5d3bf4048410e534fbec148
> Author: Alan Cox <alan@xxxxxxxxxxxxxxx>
> Date: Thu May 3 22:22:09 2012 +0100
>
> pty: Lock the devpts bits privately

Already fixed. It turned out we could just get rid of the lock there
anyway
--
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/