]> git.baikalelectronics.ru Git - kernel.git/commit
printk: make printk more robust by not allowing recursion
authorIngo Molnar <mingo@elte.hu>
Fri, 25 Jan 2008 20:07:58 +0000 (21:07 +0100)
committerIngo Molnar <mingo@elte.hu>
Fri, 25 Jan 2008 20:07:58 +0000 (21:07 +0100)
commit807e543923b16159636e789e72f72f608acfb669
treeab4bf487f675ab1a19b3ad0eac78a0e48f5144e9
parentc5e579f0b127b5715c92188ce24a289ecdad575b
printk: make printk more robust by not allowing recursion

make printk more robust by allowing recursion only if there's a crash
going on. Also add recursion detection.

I've tested it with an artificially injected printk recursion - instead
of a lockup or spontaneous reboot or other crash, the output was a well
controlled:

[   41.057335] SysRq : <2>BUG: recent printk recursion!
[   41.057335] loglevel0-8 reBoot Crashdump show-all-locks(D) tErm Full kIll saK showMem Nice powerOff showPc show-all-timers(Q) unRaw Sync showTasks Unmount shoW-blocked-tasks

also do all this printk-debug logic with irqs disabled.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Reviewed-by: Nick Piggin <npiggin@suse.de>
kernel/printk.c