diff options
author | Shachar Shemesh <shachar@liveu.tv> | 2012-07-10 06:54:13 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-07-26 22:37:06 +0200 |
commit | aa3c8af86382227c2a599dc477bfc5b127d3f569 (patch) | |
tree | fd435cb63a16906acc177333fc79a0758c4da853 /drivers/tty | |
parent | pch_uart: Add eg20t_port lock field, avoid recursive spinlocks (diff) | |
download | linux-aa3c8af86382227c2a599dc477bfc5b127d3f569.tar.xz linux-aa3c8af86382227c2a599dc477bfc5b127d3f569.zip |
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 <shachar@liveu.tv>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/tty')
-rw-r--r-- | drivers/tty/tty_ldisc.c | 2 |
1 files changed, 1 insertions, 1 deletions
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); |