Re: lockup with voluntary preempt R0 and VP, KP, etc, disabled

From: Ingo Molnar
Date: Fri Sep 03 2004 - 06:56:50 EST



* Florian Schmidt <mista.tapas@xxxxxxx> wrote:

> [<c0105e29>] do_signal+0x79/0x110
> [<c01162a0>] default_wake_function+0x0/0x20
> c012fgd7 do_futex+0x47/0xa0
> c012fb20 sys_futex
> c0103f07 do_notify
> c01060e6 work_notifysig
>
> Code: 96 54 01 00 00 8e e0 8e e8 85 d2 74 11 c7 86 54 01 00 00 00 00 00
> 00 89 d0 e8 bb e4 ff 8b 9e 5c 01 00 00 85 db 74 09 8b 45 0c <8b> 40 20
> 48 78 08 8b 5d f8 8b 75 fc c9 c3 c7 86 56 01 00 00 00
> <6> note: scsynth exited with preempt count 1

it seems the first crash scrolled off and we dont really know what
happened ... Could you apply the attached patch - it will shut the
console off and freeze the box after printing the first oops.

Ingo
--- linux/arch/i386/kernel/traps.c.orig
+++ linux/arch/i386/kernel/traps.c
@@ -256,6 +256,9 @@ void show_registers(struct pt_regs *regs
}
}
printk("\n");
+ console_silent();
+ for (;;)
+ local_irq_disable();
}

static void handle_BUG(struct pt_regs *regs)