From: Alan Cox Date: Wed, 9 May 2012 16:03:19 +0000 (+0100) Subject: tty: drop the pty lock during hangup X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=b1d679afd766cf425ba1cd2a0fd17451bd212f4a;p=deliverable%2Flinux.git tty: drop the pty lock during hangup In theory we don't need it, in practice we are hitting some ill understood deadlock when we don't drop it. The old code dropped it here so we are not undoing anything problematic for pty. If pty could be unloaded it would be a problem but it can't. Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/tty/pty.c b/drivers/tty/pty.c index d6fa8429f3ff..59af3945ea85 100644 --- a/drivers/tty/pty.c +++ b/drivers/tty/pty.c @@ -63,7 +63,9 @@ static void pty_close(struct tty_struct *tty, struct file *filp) mutex_unlock(&devpts_mutex); } #endif + tty_unlock(tty); tty_vhangup(tty->link); + tty_lock(tty); } }