From b2e9c7d07fcc8966d6aa50a77afa66c9919bd5a8 Mon Sep 17 00:00:00 2001 From: Peter Zijlstra Date: Sat, 30 Sep 2006 23:28:02 -0700 Subject: [PATCH] sysrq: disable lockdep on reboot SysRq : Emergency Sync Emergency Sync complete SysRq : Emergency Remount R/O Emergency Remount complete SysRq : Resetting BUG: warning at kernel/lockdep.c:1816/trace_hardirqs_on() (Not tainted) Call Trace: [] show_trace+0xae/0x319 [] dump_stack+0x15/0x17 [] trace_hardirqs_on+0xbc/0x13d [] sysrq_handle_reboot+0x9/0x11 [] __handle_sysrq+0x99/0x130 [] handle_sysrq+0x17/0x19 [] kbd_event+0x32e/0x57d [] input_event+0x42d/0x45b [] atkbd_interrupt+0x44d/0x53d [] serio_interrupt+0x49/0x86 [] i8042_interrupt+0x202/0x21a [] handle_IRQ_event+0x2c/0x64 [] __do_IRQ+0xaf/0x114 [] do_IRQ+0xf8/0x107 [] ret_from_intr+0x0/0xf DWARF2 unwinder stuck at ret_from_intr+0x0/0xf Leftover inexact backtrace: [] mwait_idle+0x3f/0x54 [] cpu_idle+0xa2/0xc5 [] rest_init+0x2b/0x2d [] start_kernel+0x24a/0x24c [] _sinittext+0x28b/0x292 Since we're shutting down anyway, don't bother being smart, just turn the thing off. Signed-off-by: Peter Zijlstra Acked-by: Ingo Molnar Cc: Arjan van de Ven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- drivers/char/sysrq.c | 1 + 1 file changed, 1 insertion(+) (limited to 'drivers/char') diff --git a/drivers/char/sysrq.c b/drivers/char/sysrq.c index 0ad6cb081db4..6b4d4d1e343d 100644 --- a/drivers/char/sysrq.c +++ b/drivers/char/sysrq.c @@ -113,6 +113,7 @@ static struct sysrq_key_op sysrq_crashdump_op = { static void sysrq_handle_reboot(int key, struct pt_regs *pt_regs, struct tty_struct *tty) { + lockdep_off(); local_irq_enable(); emergency_restart(); } -- cgit v1.2.3