Re: kernel BUG doing sysrq-t on 2.4.2-ac14

From: Andrew Morton (andrewm@uow.edu.au)
Date: Thu Mar 08 2001 - 18:32:47 EST


Andreas Dilger wrote:
>
> > [< c0109557>] kernel BUG at printk.c:327!
>
> It may be that if the tasklist is too long, and it runs with interrupts
> disabled, that this will trigger the NMI watchdog timer. Since I don't
> know anything about the console, I can't help.

Yes, this is being a pest. I assume what is happening
is that a CPU is (slowly) doing a print to the serial
console with console_sem held. Then the NMI watchdog
fires and it reinitialises the console semaphore. On return
from the NMI handler, console_sem is now released. It's off-by-one.

So subsequent attempts to use printk() hit the BUG(). ho-hum.
The machine is of course completely kaput by this stage
but this really should be fixed. This'll be fun to test.

A wider question is why are we still getting NMI watchdog
triggering during SYSRQ-T on a serial console. This
is the second time this has been reported. It can certainly
happen if the serial port is set up for hardware handshaking
and the modem control lines aren't set up right - we loop
for ever in the serial console code. Fair enough.

Maybe the sysrq handler should communicate with the NMI
watchdog code, and tell it not to fire while it's dumping
stuff. hmm... Messy.

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



This archive was generated by hypermail 2b29 : Thu Mar 15 2001 - 21:00:09 EST