From: Ingo Molnar <mingo@elte.hu>
To: Jan Beulich <jbeulich@novell.com>
Cc: Andrew Morton <akpm@osdl.org>,
jeff@garzik.org, htejun@gmail.com, reuben-lkml@reub.net,
linux-kernel@vger.kernel.org
Subject: Re: 2.6.17-rc5-mm2
Date: Fri, 2 Jun 2006 09:09:48 +0200 [thread overview]
Message-ID: <20060602070948.GB9721@elte.hu> (raw)
In-Reply-To: <447FFCAC.76E4.0078.0@novell.com>
* Jan Beulich <jbeulich@novell.com> wrote:
> >- Make the code robust and able to detect "unexpected" states at all
> > points through the process. If at the end of the process we see that we
> > have encountered an unexpected state,
>
> The problem is that the unwind is expected to end with an odd state
> (i.e. fail), at least until all possible root points of execution
> (i.e. bottoms of call stacks) have a proper annotation forcing their
> parent program counter to zero (which I don't expect to happen soon,
> if ever, because I think this is something difficult to prove). Thus
> the only reasonable thing to do is to check whether the first level of
> unwinding failed.
firstly, i'd suggest to use another magic value for 'bottom of call
stacks' - it is way too common to jump or call a NULL pointer. Something
like 0xfedcba9876543210 would be better.
> > - emit a diagnostic so Jan can work out if there's a way to improve
> > the unwinder in this situation
>
> > - do a traditional backtrace as well.
>
> This might be a config or boot option (and might be forced on for a
> short while), but I generally don't think this is helpful, given that
> the entire point of the added logic is to remove (useless) information
> (even more that if you have to rely on the screen alone, you have to
> live with its limited size, and pushing out an old-style stack trace
> after the unwound one would likely make part or all of it as well as
> the register information disappear).
for the RIP/EIP to get corrupted is a common occurance. So is stack
corruption. So the fallback mechanism shouldnt be a 'short while'
side-thought, it must be part of the design.
If we use a much better magic value to delimit the stack then our
confidence that the stacktrace is correct will be much higher.
In all other cases (if we go outside of the stack page(s)) we _must_
fall back to the dump 'scan the stack pages for interesting entries'
method, to get the information out! "Uh oh the unwind info somehow got
corrupted, sorry" is not enough to debug a kernel bug.
What we _can_ ignore are stack/register corruptions that accidentally
cause a valid unwind call chain to be printed. That is impossible to
detect and it's much less likely than say normal stack or register
corruption. But we _must not_ ignore clear parsing errors. This is a
really basic thing ...
Ingo
next prev parent reply other threads:[~2006-06-02 7:09 UTC|newest]
Thread overview: 97+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-06-01 8:48 2.6.17-rc5-mm2 Andrew Morton
2006-06-01 9:30 ` 2.6.17-rc5-mm2 Mike Galbraith
2006-06-01 9:45 ` 2.6.17-rc5-mm2 Jens Axboe
2006-06-01 9:48 ` 2.6.17-rc5-mm2 Andrew Morton
2006-06-01 9:34 ` 2.6.17-rc5-mm2 Reuben Farrelly
2006-06-01 9:56 ` 2.6.17-rc5-mm2 Andrew Morton
2006-06-01 10:11 ` 2.6.17-rc5-mm2 Reuben Farrelly
2006-06-01 10:33 ` 2.6.17-rc5-mm2 Ingo Molnar
2006-06-01 10:53 ` 2.6.17-rc5-mm2 Ingo Molnar
2006-06-01 11:25 ` 2.6.17-rc5-mm2 Ingo Molnar
2006-06-01 11:59 ` 2.6.17-rc5-mm2 Reuben Farrelly
2006-06-01 16:22 ` 2.6.17-rc5-mm2 Andrew Morton
2006-06-01 22:15 ` 2.6.17-rc5-mm2 Reuben Farrelly
2006-06-01 12:20 ` 2.6.17-rc5-mm2 Jan Beulich
2006-06-01 16:19 ` 2.6.17-rc5-mm2 Andrew Morton
2006-06-01 18:34 ` 2.6.17-rc5-mm2 Andrew Morton
2006-06-02 6:54 ` 2.6.17-rc5-mm2 Jan Beulich
2006-06-02 7:09 ` Ingo Molnar [this message]
2006-06-02 7:22 ` 2.6.17-rc5-mm2 Andrew Morton
2006-06-02 7:21 ` 2.6.17-rc5-mm2 Ingo Molnar
2006-06-02 7:13 ` 2.6.17-rc5-mm2 Andrew Morton
2006-06-02 7:37 ` 2.6.17-rc5-mm2 Jan Beulich
2006-06-02 7:51 ` 2.6.17-rc5-mm2 Ingo Molnar
2006-06-02 20:53 ` 2.6.17-rc5-mm2 Daniel Jacobowitz
2006-06-01 10:23 ` 2.6.17-rc5-mm2 Jeff Garzik
2006-06-01 11:42 ` 2.6.17-rc5-mm2 another compile error Helge Hafting
2006-06-01 16:29 ` Andrew Morton
2006-06-21 12:07 ` Adrian Bunk
2006-06-01 11:54 ` 2.6.17-rc5-mm2 stack unwind compile failure Helge Hafting
2006-06-01 16:30 ` Andrew Morton
2006-06-01 12:35 ` 2.6.17-rc5-mm2 md cause BUGs, and readahead speedup Helge Hafting
2006-06-01 12:54 ` Arjan van de Ven
2006-06-01 13:03 ` 2.6.17-rc5-mm2 link issues on s390 Cedric Le Goater
2006-06-01 13:28 ` Martin Schwidefsky
2006-06-01 13:53 ` Cedric Le Goater
2006-06-08 7:28 ` Heiko Carstens
2006-06-08 9:13 ` Cedric Le Goater
2006-06-08 11:02 ` Heiko Carstens
2006-06-08 12:45 ` Cedric Le Goater
2006-06-09 7:58 ` Heiko Carstens
2006-06-01 15:35 ` 2.6.17-rc5-mm2 Jiri Slaby
2006-06-01 15:49 ` 2.6.17-rc5-mm2 Arjan van de Ven
2006-06-01 16:35 ` 2.6.17-rc5-mm2 Ben Collins
2006-06-05 11:28 ` [PATCH 2.6.17-rc5-mm3] ieee1394: hl_irqs_lock is taken in hardware interrupt context Stefan Richter
2006-06-05 11:31 ` [PATCH 2.6.17-rc5-mm3] ieee1394: adjust code formatting in highlevel.c Stefan Richter
2006-06-05 12:07 ` [PATCH 2.6.17-rc5-mm3] ieee1394: hl_irqs_lock is taken in hardware interrupt context Stefan Richter
2006-06-01 15:51 ` 2.6.17-rc5-mm2 Michal Piotrowski
2006-06-01 17:20 ` 2.6.17-rc5-mm2 Arjan van de Ven
2006-06-01 17:35 ` 2.6.17-rc5-mm2 Andrew Morton
2006-06-01 17:36 ` 2.6.17-rc5-mm2 Arjan van de Ven
2006-06-01 19:04 ` 2.6.17-rc5-mm2 Michal Piotrowski
2006-06-01 22:30 ` 2.6.17-rc5-mm2 Michal Piotrowski
2006-06-01 17:22 ` 2.6.17-rc5-mm2 Andrew Morton
2006-06-01 17:27 ` 2.6.17-rc5-mm2 Arjan van de Ven
2006-06-01 17:40 ` 2.6.17-rc5-mm2 Andrew Morton
2006-06-01 19:31 ` 2.6.17-rc5-mm2 Ingo Molnar
2006-06-01 21:51 ` 2.6.17-rc5-mm2 Jesper Juhl
2006-06-01 21:52 ` 2.6.17-rc5-mm2 Jesper Juhl
2006-06-01 22:25 ` 2.6.17-rc5-mm2 Barry K. Nathan
2006-06-01 22:40 ` 2.6.17-rc5-mm2 Andrew Morton
2006-06-01 22:32 ` 2.6.17-rc5-mm2 Barry K. Nathan
2006-06-01 22:52 ` 2.6.17-rc5-mm2 Andrew Morton
2006-06-02 0:07 ` 2.6.17-rc5-mm2 Barry K. Nathan
2006-06-02 0:28 ` 2.6.17-rc5-mm2 Andrew Morton
2006-06-02 0:43 ` 2.6.17-rc5-mm2 Barry K. Nathan
2006-06-02 0:58 ` 2.6.17-rc5-mm2 Barry K. Nathan
2006-06-02 1:38 ` 2.6.17-rc5-mm2 Andrew Morton
2006-06-02 6:02 ` 2.6.17-rc5-mm2 Ingo Molnar
2006-06-02 13:14 ` 2.6.17-rc5-mm2 Barry K. Nathan
2006-06-02 14:20 ` 2.6.17-rc5-mm2 Ingo Molnar
2006-06-02 18:01 ` 2.6.17-rc5-mm2 Barry K. Nathan
2006-06-02 18:06 ` 2.6.17-rc5-mm2 Barry K. Nathan
2006-06-02 20:53 ` 2.6.17-rc5-mm2 Ingo Molnar
2006-06-02 22:33 ` 2.6.17-rc5-mm2 Barry K. Nathan
2006-06-03 7:13 ` 2.6.17-rc5-mm2 Ingo Molnar
2006-06-03 14:41 ` 2.6.17-rc5-mm2 Ingo Molnar
2006-06-03 21:10 ` 2.6.17-rc5-mm2 Barry K. Nathan
2006-06-04 2:29 ` 2.6.17-rc5-mm2 Barry K. Nathan
2006-06-04 8:33 ` 2.6.17-rc5-mm2 Ingo Molnar
2006-06-04 7:57 ` 2.6.17-rc5-mm2 Ingo Molnar
2006-06-02 15:51 ` 2.6.17-rc5-mm2 Alan Cox
2006-06-02 18:21 ` 2.6.17-rc5-mm2 Barry K. Nathan
2006-06-02 18:25 ` 2.6.17-rc5-mm2 Andrew Morton
2006-06-02 3:23 ` 2.6.17-rc5-mm2 KAMEZAWA Hiroyuki
2006-06-02 5:06 ` 2.6.17-rc5-mm2 Andrew Morton
2006-06-02 10:09 ` 2.6.17-rc5-mm2 Paolo Ornati
2006-06-02 11:10 ` 2.6.17-rc5-mm2 Ingo Molnar
2006-06-02 11:17 ` 2.6.17-rc5-mm2 Ingo Molnar
2006-06-02 11:34 ` 2.6.17-rc5-mm2 Paolo Ornati
2006-06-02 14:13 ` 2.6.17-rc5-mm2 Ingo Molnar
2006-06-02 14:46 ` 2.6.17-rc5-mm2 Paolo Ornati
2006-06-02 15:10 ` 2.6.17-rc5-mm2 Ingo Molnar
2006-06-02 19:49 ` 2.6.17-rc5-mm2 Ingo Molnar
2006-06-02 20:09 ` 2.6.17-rc5-mm2 Paolo Ornati
2006-06-02 18:38 ` 2.6.17-rc5-mm2 Mel Gorman
2006-06-02 18:59 ` 2.6.17-rc5-mm2 Andrew Morton
2006-06-03 15:29 ` 2.6.17-rc5-mm2 Mel Gorman
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=20060602070948.GB9721@elte.hu \
--to=mingo@elte.hu \
--cc=akpm@osdl.org \
--cc=htejun@gmail.com \
--cc=jbeulich@novell.com \
--cc=jeff@garzik.org \
--cc=linux-kernel@vger.kernel.org \
--cc=reuben-lkml@reub.net \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®