Re: [Fastboot] /var/log/messages doesn't have crash info when kernel gets panic/oops/crash

Haren Myneni
2009-06-16T05:44:05Z

[-- Attachment #1.1: Type: text/plain, Size: 5853 bytes --]

fastboot-bounces@lists.linux-foundation.org wrote on 06/15/2009 09:43:02
PM:

> Dharmosoth Seetharam <dseetharam@inbox.com>
>
> Hi,
>
> I have experimented few things and results are below.
>
> Case 1) echo 0 > /proc/sys/kernel/panic_on_oops
> When BUG/oops occurred it is able to log the diagnostics to
> /var/log/messages
> and then continue(not switching to dump-saving kernel).
>
> What I am looking is - I want both the things to be happen.
> that is - it should log the appropriate messages in /var/
> log/messsages and
> should be able to take kernel dump.

when panic_on_oops is not set, it does not call crash_kexec() - change in
kexec_should_crash() in kernel/kexec.c

>
> case 2) In general, When panic has occurred we won't log any type of
> messages in
> /var/log/messages ... am I right ?
> If KEXEC is enabled and dump-saving kernel is loaded then
> will switch to it and save the kernel dump.
>
> I have added the dump_stack() function call in the panic()
function
> before calling crash_kexec with few seconds of delay. It is
behaving
> like randomly (ie. some time stack traces are logged in /
> var/log/messages and
> not for rest of the time)
>
> What I am looking is - I want to log the appropriate
> messages in /var/log/messages
> and then switch to dump-saving kernel.
>

printk messages in /var/log/messages is depends on how fast klogd flushes
printk buffer.

> case 3) In general, When die/nmi_die called we used to log the
> appropriate messages in /var/log/message
> and then saving kernel dump will be depends on KEXEC enable
> and loading dump-saving kernel.
> --- am I right ?
>
> I have added the delay in die() function with few seconds
> before calling crash_kexec()
> But I never seen messages logged in /var/log/messages, I can
> see those on serial console.
>
> Here also my intention is want both, ie. log the appropriate
> messages in /var/log/messages
> and then take the action as per KEXEC enabled.

printk write to the console and its buffer, As I said, depends on time for
klogd flushes printk buffer.

>
>
>
> Please advice me, What we can do to achieve those things.
>
> Thanks for helping me here.
>
>
> regards,
> Seetharam
>
>
>
>
>
> > -----Original Message-----
> > From: nhorman@redhat.com
> > Sent: Sat, 13 Jun 2009 14:07:36 -0400
> > To: dseetharam@inbox.com
> > Subject: Re: /var/log/messages doesn't have crash info when kernel gets
> > panic/oops/crash
> >
> > On Fri, Jun 12, 2009 at 11:01:35PM -0800, Dharmosoth Seetharam wrote:
> >>
> >> Hi Neil,
> >>
> >> Thanks for your quick reply.
> >>
> >> What you have suggested is nice when we got/save crash dump (i.e
vmcore)
> >> What if we failed to save/capture vmcore info or vmcore is corrupted
> >> etc. then we dont get any information
> >> regarding the panic/crash/oops at anywhere?
> >>
> > If the vmcore is corrupted to the point where makedumpfile can't
extract
> > the
> > dmesg log, then its certain that syslog wouldn't have been able to
write
> > anything to /var/log/messages either. As a last resort you can try run
> > strings
> > on the corrupted vmcore and see if the dmesg log is still in there
> > somewhere.
> >
> > If you forgot to capture the vmcore, theres not much more help I can
give
> > you,
> > Im afraid. You'll just have to make sure you capture it next time. If
> > you only
> > need the backtrace, and don't want the rest of the vmcore, you can make
> > kdump
> > just run makedumpfile --dump-dmesg /proc/vmcore /var/log/oops.txt
> >
> > Neil
> >
>
>
> >>
> >>
> >>
> >> Thanks and Regards
> >>
> >> Seetharam
> >>
> >>
> >>> -----Original Message-----
> >>> From: nhorman@redhat.com
> >>> Sent: Fri, 12 Jun 2009 16:05:13 -0400
> >>> To: dseetharam@inbox.com
> >>> Subject: Re: /var/log/messages doesn't have crash info when kernel
gets
> >>> panic/oops/crash
> >>>
> >>> On Fri, Jun 12, 2009 at 01:25:49AM -0800, Dharmosoth Seetharam wrote:
> >>>> Hi,
> >>>>
> >>>> I have encounter a problem called /var/log/messages does not contain
> >>>> any
> >>>> information
> >>>> on kernel crash dump.
> >>>>
> >>>> Prior to enabling KEXEC we saw stack traces and bug info etc in
> >>>> /var/log/messages.
> >>>> After enabling KEXEC feature those info was missed.
> >>>>
> >>>> How can we get those missed info in /var/log/messages even when
KEXEC
> >>>> feature is enabled.
> >>>>
> >>>> Any help will appreciate.
> >>>>
> >>> run crash on the resultant vmcore file that kexec can produce/save
and
> >>> get the
> >>> dmesg log out of it.
> >>> alternatively you can use makedumpfile with the --dump-dmesg log
> >>>
> >>> Neil
> >>>
> >>>>
> >>>> Thanks and Regards
> >>>> Seetharam
> >>>>
> >>>> ____________________________________________________________
> >>>> Receive Notifications of Incoming Messages
> >>>> Easily monitor multiple email accounts & access them with a click.
> >>>> Visit http://www.inbox.com/notifier and check it out!
> >>>>
> >>>> _______________________________________________
> >>>> kexec mailing list
> >>>> kexec@lists.infradead.org
> >>>> http://lists.infradead.org/mailman/listinfo/kexec
> >>
> >> ____________________________________________________________
> >> GET FREE SMILEYS FOR YOUR IM & EMAIL - Learn more at
> >> http://www.inbox.com/smileys
> >> Works with AIM®, MSN® Messenger, Yahoo!® Messenger, ICQ®, Google Talk™
> >> and most webmails
> _______________________________________________
> fastboot mailing list
> fastboot@lists.linux-foundation.org
> https://lists.linux-foundation.org/mailman/listinfo/fastboot

[-- Attachment #1.2: Type: text/html, Size: 8570 bytes --]

[-- Attachment #2: Type: text/plain, Size: 143 bytes --]