From: Shachar Shemesh Date: Tue, 10 Jul 2012 04:54:13 +0000 (+0300) Subject: tty ldisc: Close/Reopen race prevention should check the proper flag X-Git-Tag: MMI-PSA29.97-13-9~16248^2~3 X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=aa3c8af86382227c2a599dc477bfc5b127d3f569;p=GitHub%2FMotorolaMobilityLLC%2Fkernel-slsi.git tty ldisc: Close/Reopen race prevention should check the proper flag Commit acfa747b introduced the TTY_HUPPING flag to distinguish closed TTY from currently closing ones. The test in tty_set_ldisc still remained pointing at the old flag. This causes pppd to sometimes lapse into uninterruptible sleep when killed and restarted. Signed-off-by: Shachar Shemesh Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/tty/tty_ldisc.c b/drivers/tty/tty_ldisc.c index 9911eb6b34cd..6f99c9959f0c 100644 --- a/drivers/tty/tty_ldisc.c +++ b/drivers/tty/tty_ldisc.c @@ -659,7 +659,7 @@ int tty_set_ldisc(struct tty_struct *tty, int ldisc) goto enable; } - if (test_bit(TTY_HUPPED, &tty->flags)) { + if (test_bit(TTY_HUPPING, &tty->flags)) { /* We were raced by the hangup method. It will have stomped the ldisc data and closed the ldisc down */ clear_bit(TTY_LDISC_CHANGING, &tty->flags);