diff options
| -rw-r--r-- | drivers/tty/n_tty.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/tty/n_tty.c b/drivers/tty/n_tty.c index d655416087b7..6c7fe90ad72d 100644 --- a/drivers/tty/n_tty.c +++ b/drivers/tty/n_tty.c | |||
| @@ -1573,6 +1573,14 @@ static void n_tty_set_termios(struct tty_struct *tty, struct ktermios *old) | |||
| 1573 | ldata->real_raw = 0; | 1573 | ldata->real_raw = 0; |
| 1574 | } | 1574 | } |
| 1575 | n_tty_set_room(tty); | 1575 | n_tty_set_room(tty); |
| 1576 | /* | ||
| 1577 | * Fix tty hang when I_IXON(tty) is cleared, but the tty | ||
| 1578 | * been stopped by STOP_CHAR(tty) before it. | ||
| 1579 | */ | ||
| 1580 | if (!I_IXON(tty) && old && (old->c_iflag & IXON) && !tty->flow_stopped) { | ||
| 1581 | start_tty(tty); | ||
| 1582 | } | ||
| 1583 | |||
| 1576 | /* The termios change make the tty ready for I/O */ | 1584 | /* The termios change make the tty ready for I/O */ |
| 1577 | wake_up_interruptible(&tty->write_wait); | 1585 | wake_up_interruptible(&tty->write_wait); |
| 1578 | wake_up_interruptible(&tty->read_wait); | 1586 | wake_up_interruptible(&tty->read_wait); |
