diff options
author | David S. Miller <davem@davemloft.net> | 2010-08-16 23:09:34 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-08-16 23:09:34 +0200 |
commit | 300a103d1504134f8c4a7e831f995e917ea9b1e4 (patch) | |
tree | 7f94d5fff513d132bd0b57a9e3bd96c4cc80d707 /drivers/serial/68360serial.c | |
parent | sparc: Really fix "console=" for serial consoles. (diff) | |
parent | Linux 2.6.36-rc1 (diff) | |
download | linux-300a103d1504134f8c4a7e831f995e917ea9b1e4.tar.xz linux-300a103d1504134f8c4a7e831f995e917ea9b1e4.zip |
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Diffstat (limited to 'drivers/serial/68360serial.c')
-rw-r--r-- | drivers/serial/68360serial.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/serial/68360serial.c b/drivers/serial/68360serial.c index 768612f8e41e..0dff3bbddc8b 100644 --- a/drivers/serial/68360serial.c +++ b/drivers/serial/68360serial.c @@ -1705,7 +1705,6 @@ static void rs_360_wait_until_sent(struct tty_struct *tty, int timeout) printk("jiff=%lu...", jiffies); #endif - lock_kernel(); /* We go through the loop at least once because we can't tell * exactly when the last character exits the shifter. There can * be at least two characters waiting to be sent after the buffers @@ -1734,7 +1733,6 @@ static void rs_360_wait_until_sent(struct tty_struct *tty, int timeout) bdp--; } while (bdp->status & BD_SC_READY); current->state = TASK_RUNNING; - unlock_kernel(); #ifdef SERIAL_DEBUG_RS_WAIT_UNTIL_SENT printk("lsr = %d (jiff=%lu)...done\n", lsr, jiffies); #endif @@ -1862,7 +1860,9 @@ static int block_til_ready(struct tty_struct *tty, struct file * filp, printk("block_til_ready blocking: ttys%d, count = %d\n", info->line, state->count); #endif + tty_unlock(); schedule(); + tty_lock(); } current->state = TASK_RUNNING; remove_wait_queue(&info->open_wait, &wait); |