Andrew Morton <a...@linux-foundation.org> writes: > On Fri, 12 Feb 2010 17:43:39 -0600 Jason Wessel <jason.wes...@windriver.com> > wrote: > >> >> printk(KERN_EMERG "Kernel panic - not syncing: %s\n",buf); >> >> #ifdef CONFIG_DEBUG_BUGVERBOSE >> >> dump_stack(); >> >> @@ -91,8 +94,6 @@ NORET_TYPE void panic(const char * fmt, ...) >> >> */ >> >> smp_send_stop(); >> >> >> >> - atomic_notifier_call_chain(&panic_notifier_list, 0, buf); >> >> - >> >> bust_spinlocks(0); >> >> >> >> if (!panic_blink) >> >> >> > >> > So the notifier call now happens before all the printks and the kexec >> > and kmsg_dump handling. What effect does this have upon the code which >> > implements kexec and kmsg_dump? >> > >> > >> >> I certainly don't want to break kexec or alter any behavior, does that >> mean kgdb / kdb should hook the kexec for notification? >> >> I think ideally it is a end user's preference as to if they want in via >> kexec or the kernel debugger. Calling the smp_send_stop() prior to the >> notifier was a death sentence for the kernel debugger. >> >> Perhaps I can move the notifier before smp_send_stop()? > > Well. My question can be simplified to "does this break existing code"?
Yes. Removing the bust_spinlocks(1) and moving the panic notification up will measurably decrease the reliability of crash dump capture. I expect it will even result in dead_locks where we fail to print the panic message for people who are trying to debug via the console. Eric ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ Kgdb-bugreport mailing list Kgdb-bugreport@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kgdb-bugreport