| From 4464d05a258b6c76ed019479cf606e1f4495da78 Mon Sep 17 00:00:00 2001 |
| From: Ingo Molnar <mingo@elte.hu> |
| Date: Fri, 3 Jul 2009 08:30:32 -0500 |
| Subject: [PATCH] serial/console: rt support fixup |
| |
| commit d4ea9d10593e414eba0d5ddc26370801b1a7fdbb in tip. |
| |
| The serial console printk path grew a new spinlock - which is rather |
| heavy - so instead of converting it to raw, use the sysrq/oops path |
| of only taking the lock if we can, on PREEMPT_RT. |
| |
| Signed-off-by: Ingo Molnar <mingo@elte.hu> |
| Signed-off-by: Thomas Gleixner <tglx@linutronix.de> |
| |
| diff --git a/drivers/serial/8250.c b/drivers/serial/8250.c |
| index 708b6d9..ea995f4 100644 |
| --- a/drivers/serial/8250.c |
| +++ b/drivers/serial/8250.c |
| @@ -2740,7 +2740,7 @@ serial8250_console_write(struct console *co, const char *s, unsigned int count) |
| |
| touch_nmi_watchdog(); |
| |
| - if (up->port.sysrq || oops_in_progress) |
| + if (up->port.sysrq || oops_in_progress || preempt_rt()) |
| locked = spin_trylock_irqsave(&up->port.lock, flags); |
| else |
| spin_lock_irqsave(&up->port.lock, flags); |
| -- |
| 1.7.1.1 |
| |