summaryrefslogtreecommitdiffstats
path: root/drivers/tty
diff options
context:
space:
mode:
authorVijay Kumar <vijay.ac.kumar@oracle.com>2017-02-01 11:34:38 -0800
committerDavid S. Miller <davem@davemloft.net>2017-02-23 08:27:24 -0800
commit7dd4fcf5b70694dc961eb6b954673e4fc9730dbd (patch)
tree4209465c2da178199e233f2f4600a36458b57047 /drivers/tty
parentcffb3e76818fee4763a2ce5f2b1eca2d7885e2cf (diff)
downloadlinux-stable-7dd4fcf5b70694dc961eb6b954673e4fc9730dbd.tar.gz
linux-stable-7dd4fcf5b70694dc961eb6b954673e4fc9730dbd.tar.bz2
linux-stable-7dd4fcf5b70694dc961eb6b954673e4fc9730dbd.zip
sparc64: Migrate hvcons irq to panicked cpu
On panic, all other CPUs are stopped except the one which had hit panic. To keep console alive, we need to migrate hvcons irq to panicked CPU. Signed-off-by: Vijay Kumar <vijay.ac.kumar@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/tty')
-rw-r--r--drivers/tty/serial/sunhv.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/tty/serial/sunhv.c b/drivers/tty/serial/sunhv.c
index 73abd89c0108..c5ebdc8bed6a 100644
--- a/drivers/tty/serial/sunhv.c
+++ b/drivers/tty/serial/sunhv.c
@@ -398,6 +398,12 @@ static struct uart_driver sunhv_reg = {
static struct uart_port *sunhv_port;
+void sunhv_migrate_hvcons_irq(int cpu)
+{
+ /* Migrate hvcons irq to param cpu */
+ irq_force_affinity(sunhv_port->irq, cpumask_of(cpu));
+}
+
/* Copy 's' into the con_write_page, decoding "\n" into
* "\r\n" along the way. We have to return two lengths
* because the caller needs to know how much to advance