[PATCH RT] don't let printk unconditionally turn on interrupts

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Ingo,

My first try at booting -rt8 on my machine crashed immediately.  No nmi,
no nothing. Just a lockup at the registration of the ACPI_PM timer.
This would happen every time, and after struggling for a while, I
finally found out why!

The printk in timeofday_periodic_hook that is called holding the
write_lock of system_time_lock (a raw_seq_lock) was causing lots of
havoc.  The printk would turn on interrupts, and then I would get a
deadlock when the interrupt would do a read on system_time_lock.

So here's the patch:

-- Steve

Signed-off-by: Steven Rostedt <[email protected]>

Index: linux-2.6.15-rt8/kernel/printk.c
===================================================================
--- linux-2.6.15-rt8.orig/kernel/printk.c	2006-01-20 14:12:07.000000000 -0500
+++ linux-2.6.15-rt8/kernel/printk.c	2006-01-20 21:23:46.000000000 -0500
@@ -772,7 +772,7 @@
 		 */
 #if defined(CONFIG_PREEMPT_RT) && !defined(CONFIG_PRINTK_IGNORE_LOGLEVEL) && !defined(CONFIG_PPC) \
     && !defined(CONFIG_PARANOID_GENERIC_TIME)
-		spin_unlock_irq(&logbuf_lock);
+		spin_unlock_irqrestore(&logbuf_lock, flags);
 #else
 		spin_unlock(&logbuf_lock);
 #endif


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux