All of lore.kernel.org
 help / color / mirror / Atom feed
From: coolsandyforyou@gmail.com (sandeep kumar)
To: kernelnewbies@lists.kernelnewbies.org
Subject: analysis of kernel panic logs.
Date: Mon, 5 Sep 2011 14:07:43 +0530	[thread overview]
Message-ID: <CAL7WMDfMGAMfNX3E8aA+fw18=Pb6ipTr40Zn8K5kAyyd+7DXEw@mail.gmail.com> (raw)
In-Reply-To: <CABi1daFA8Mo8A1-AQCDeUC0arbdanw4dDCT1eFaM9-uBu24mug@mail.gmail.com>

Hi Dave,

I want to share what is the problem and how it got fixed.

The problem goes like this,
The init process(init.c) of ANDROID parses "init.rc" file which specifies
the actions to be done on a specific trigger.
In our case mistakenly we specified the trigger,but no action.

Due to which the parser parsed the action to be NULL, and executed it when
the trigger occured.
Which caused the NULL dereferencing.

We fixed that by doing a NULL check before calling the action.

As our analysis for the problem goes,
init being the critical process, when killed, platform called a system call
to restart the kernel.
is it correct or we missd something?

I have the following questions also,

1) When we enabled that config option CONFIG_DEBUG_USER, the register dump
we got, is of user space application, right?

2) init: unhandled page fault (11) at 0x00000000, code 0x80000007, this is
given by the CONFIG_DEBUG_USER, any reference how to analyse the 'code'
value?

Thank you,
Sandeep






On Mon, Sep 5, 2011 at 1:26 PM, Dave Hylands <dhylands@gmail.com> wrote:

> Hi Sandeep,
>
> On Sun, Sep 4, 2011 at 10:51 PM, sandeep kumar
> <coolsandyforyou@gmail.com> wrote:
> > Hi Dave,
> >
> > The problem is solved.
> > But i have one doubt.
> >
> >>So the PC is 0, and the LR is C92F. That tells me that the code at
> >>C92F in your init process is trying to call a function through a NULL
> >>pointer. You can try disassembling your init process. Something like
> >
> >>arm-eabi-objdump --disassemble init
> >
> > In this case we came to know the process name 'init'. But in some
> > cases we might just have the link register address, and no process name.
> > say some user-space process has caused the panic.
> >
> > Can u tell me ..how to debug in that case?
>
> You should always have a pid & process name if its a user-space app
> which dies (at least if you enable CONFIG_DEBUG_USER and enabling
> user_debug)
>
> --
>  Dave Hylands
> Shuswap, BC, Canada
> http://www.davehylands.com
>



-- 
With regards,
Sandeep Kumar Anantapalli,
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20110905/57f6ed75/attachment.html 

  reply	other threads:[~2011-09-05  8:37 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-09-02  6:03 analysis of kernel panic logs sandeep kumar
2011-09-02  7:26 ` Mulyadi Santosa
2011-09-02 11:11   ` sandeep kumar
2011-09-02 13:12     ` keshav yadav
2011-09-02 15:13     ` Dave Hylands
2011-09-05  5:51       ` sandeep kumar
2011-09-05  7:56         ` Dave Hylands
2011-09-05  8:37           ` sandeep kumar [this message]
2011-09-06 16:44             ` Dave Hylands
2011-09-06 16:56               ` anish singh

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAL7WMDfMGAMfNX3E8aA+fw18=Pb6ipTr40Zn8K5kAyyd+7DXEw@mail.gmail.com' \
    --to=coolsandyforyou@gmail.com \
    --cc=kernelnewbies@lists.kernelnewbies.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.