summaryrefslogtreecommitdiffstats
path: root/drivers/serial
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2010-06-01 22:53:05 +0200
committerGreg Kroah-Hartman <gregkh@suse.de>2010-08-10 13:47:43 -0700
commitbe1bc2889a4db4961ef69f47fb471ecae9f23ade (patch)
treefd6d5e46e69efd9d66e6baa184988461f608f49a /drivers/serial
parent4e608671674b62e97166f903830d5553e37970e8 (diff)
downloadlinux-stable-be1bc2889a4db4961ef69f47fb471ecae9f23ade.tar.gz
linux-stable-be1bc2889a4db4961ef69f47fb471ecae9f23ade.tar.bz2
linux-stable-be1bc2889a4db4961ef69f47fb471ecae9f23ade.zip
tty: introduce wait_event_interruptible_tty
Calling wait_event_interruptible implicitly releases the BKL when it sleeps, but we need to do this explcitly when we have converted it to a mutex. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/serial')
-rw-r--r--drivers/serial/crisv10.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/serial/crisv10.c b/drivers/serial/crisv10.c
index f848e188deae..94bfb9f238e1 100644
--- a/drivers/serial/crisv10.c
+++ b/drivers/serial/crisv10.c
@@ -3992,7 +3992,7 @@ block_til_ready(struct tty_struct *tty, struct file * filp,
*/
if (tty_hung_up_p(filp) ||
(info->flags & ASYNC_CLOSING)) {
- wait_event_interruptible(info->close_wait,
+ wait_event_interruptible_tty(info->close_wait,
!(info->flags & ASYNC_CLOSING));
#ifdef SERIAL_DO_RESTART
if (info->flags & ASYNC_HUP_NOTIFY)
@@ -4150,7 +4150,7 @@ rs_open(struct tty_struct *tty, struct file * filp)
*/
if (tty_hung_up_p(filp) ||
(info->flags & ASYNC_CLOSING)) {
- wait_event_interruptible(info->close_wait,
+ wait_event_interruptible_tty(info->close_wait,
!(info->flags & ASYNC_CLOSING));
#ifdef SERIAL_DO_RESTART
return ((info->flags & ASYNC_HUP_NOTIFY) ?