diff options
author | Mark Brown <broonie@kernel.org> | 2018-07-05 11:05:40 +0100 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2018-07-05 11:05:40 +0100 |
commit | 7a3f6e8d2096d244ad7080673497d43f15e08bdb (patch) | |
tree | 822a121579242ba5e474e88c8146d07223f9c4c2 /drivers/tty | |
parent | 68921fb4be8e567565aa704350e858db1c470eff (diff) | |
parent | e96c5550070c189a8ccb26dc6eae76ee8eef833d (diff) |
Merge branch 'linux-linaro-lsk-v4.4' into linux-linaro-lsk-v4.4-android
Diffstat (limited to 'drivers/tty')
-rw-r--r-- | drivers/tty/serial/sh-sci.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/drivers/tty/serial/sh-sci.c b/drivers/tty/serial/sh-sci.c index 8dd822feb972..b63920481b1d 100644 --- a/drivers/tty/serial/sh-sci.c +++ b/drivers/tty/serial/sh-sci.c @@ -2419,13 +2419,12 @@ static void serial_console_write(struct console *co, const char *s, unsigned long flags; int locked = 1; - local_irq_save(flags); if (port->sysrq) locked = 0; else if (oops_in_progress) - locked = spin_trylock(&port->lock); + locked = spin_trylock_irqsave(&port->lock, flags); else - spin_lock(&port->lock); + spin_lock_irqsave(&port->lock, flags); /* first save the SCSCR then disable the interrupts */ ctrl = serial_port_in(port, SCSCR); @@ -2442,8 +2441,7 @@ static void serial_console_write(struct console *co, const char *s, serial_port_out(port, SCSCR, ctrl); if (locked) - spin_unlock(&port->lock); - local_irq_restore(flags); + spin_unlock_irqrestore(&port->lock, flags); } static int serial_console_setup(struct console *co, char *options) |