Commit 28e1445c authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman

Merge branch 'tty-linus' into 'tty-testing'

We need the fixes in drivers/tty/tty_io.c that were done in there for
future patches in this branch.
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parents c015b4ad 494c1eac
...@@ -363,7 +363,7 @@ uart_get_baud_rate(struct uart_port *port, struct ktermios *termios, ...@@ -363,7 +363,7 @@ uart_get_baud_rate(struct uart_port *port, struct ktermios *termios,
* The spd_hi, spd_vhi, spd_shi, spd_warp kludge... * The spd_hi, spd_vhi, spd_shi, spd_warp kludge...
* Die! Die! Die! * Die! Die! Die!
*/ */
if (baud == 38400) if (try == 0 && baud == 38400)
baud = altbaud; baud = altbaud;
/* /*
......
...@@ -1763,6 +1763,8 @@ int tty_release(struct inode *inode, struct file *filp) ...@@ -1763,6 +1763,8 @@ int tty_release(struct inode *inode, struct file *filp)
int do_sleep, final; int do_sleep, final;
int idx; int idx;
char buf[64]; char buf[64];
long timeout = 0;
int once = 1;
if (tty_paranoia_check(tty, inode, __func__)) if (tty_paranoia_check(tty, inode, __func__))
return 0; return 0;
...@@ -1832,9 +1834,16 @@ int tty_release(struct inode *inode, struct file *filp) ...@@ -1832,9 +1834,16 @@ int tty_release(struct inode *inode, struct file *filp)
if (!do_sleep) if (!do_sleep)
break; break;
printk(KERN_WARNING "%s: %s: read/write wait queue active!\n", if (once) {
__func__, tty_name(tty, buf)); once = 0;
schedule(); printk(KERN_WARNING "%s: %s: read/write wait queue active!\n",
__func__, tty_name(tty, buf));
}
schedule_timeout_killable(timeout);
if (timeout < 120 * HZ)
timeout = 2 * timeout + 1;
else
timeout = MAX_SCHEDULE_TIMEOUT;
} }
if (o_tty) { if (o_tty) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment