diff options
Diffstat (limited to 'drivers/char/n_tty.c')
-rw-r--r-- | drivers/char/n_tty.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/char/n_tty.c b/drivers/char/n_tty.c index 154f42203b0..371631f4bfb 100644 --- a/drivers/char/n_tty.c +++ b/drivers/char/n_tty.c @@ -1538,7 +1538,8 @@ static unsigned int normal_poll(struct tty_struct * tty, struct file * file, pol else tty->minimum_to_wake = 1; } - if (tty->driver->chars_in_buffer(tty) < WAKEUP_CHARS && + if (!tty_is_writelocked(tty) && + tty->driver->chars_in_buffer(tty) < WAKEUP_CHARS && tty->driver->write_room(tty) > 0) mask |= POLLOUT | POLLWRNORM; return mask; |