summaryrefslogtreecommitdiffstats
path: root/drivers/tty/amiserial.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2012-04-20 11:40:43 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2012-04-20 11:40:43 -0700
commit3a5374303923a543ff3e5f491030b21836d288f5 (patch)
tree05664edf4a6f10bcb196c9e103eda60e8765334c /drivers/tty/amiserial.c
parent1cd653a665b08a3920e320a71b4ac5b80d36953c (diff)
parentd3a7b83f865b46bb7b5e1ed18a129ce1af349db4 (diff)
Merge tag 'tty-3.4-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty
Pull 3 tiny tty bugfixes from Greg Kroah-Hartman. * tag 'tty-3.4-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: drivers/tty/amiserial.c: add missing tty_unlock pch_uart: Fix dma channel unallocated issue ARM: clps711x: serial driver hungs are a result of call disable_irq within ISR
Diffstat (limited to 'drivers/tty/amiserial.c')
-rw-r--r--drivers/tty/amiserial.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/tty/amiserial.c b/drivers/tty/amiserial.c
index 24145c30c9b..6cc4358f68c 100644
--- a/drivers/tty/amiserial.c
+++ b/drivers/tty/amiserial.c
@@ -1073,8 +1073,10 @@ static int set_serial_info(struct tty_struct *tty, struct serial_state *state,
(new_serial.close_delay != port->close_delay) ||
(new_serial.xmit_fifo_size != state->xmit_fifo_size) ||
((new_serial.flags & ~ASYNC_USR_MASK) !=
- (port->flags & ~ASYNC_USR_MASK)))
+ (port->flags & ~ASYNC_USR_MASK))) {
+ tty_unlock();
return -EPERM;
+ }
port->flags = ((port->flags & ~ASYNC_USR_MASK) |
(new_serial.flags & ASYNC_USR_MASK));
state->custom_divisor = new_serial.custom_divisor;