public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Andi Kleen <ak@suse.de>
To: Keith Owens <kaos@ocs.com.au>
Cc: "Jan Beulich" <jbeulich@novell.com>,
	"Badari Pulavarty" <pbadari@gmail.com>,
	"J. Bruce Fields" <bfields@fieldses.org>,
	petkov@math.uni-muenster.de, akpm@osdl.org,
	"lkml" <linux-kernel@vger.kernel.org>
Subject: Re: Was: boot failure, "DWARF2 unwinder stuck at 0xc0100199"
Date: Wed, 6 Sep 2006 09:43:14 +0200	[thread overview]
Message-ID: <200609060943.14663.ak@suse.de> (raw)
In-Reply-To: <13380.1157524272@ocs3.ocs.com.au>


> Lots of luck.  I logged a bug several years ago against gcc for ia64
> with noreturn calls.  When gcc sees a call to a function marked
> noreturn (like do_exit or panic), gcc has been known to discard all
> code past that point.  The unwind code has to assume that the return
> address is pointing into the previous function.  Where does the return
> address point after a noreturn call compiled with the gcc bug?  - at
> the start of the next function.  Goodbye unwind.
> 
> I asked that gcc always insert at least one instruction after a call to
> a noreturn function.  That would keep the return address inside the
> right function and the unwind code would work.  Ideally that
> instruction would cause an error if it was ever executed (break 0 on
> ia64, ud2 on i386/x86_64) but even a no-op would be good enough.  Most
> of the ia64 list thought it was a good idea, the gcc team disagreed.
> AFAIK the bug is still outstanding.


In the discussion Jan came up with a heuristic that will probably work.
It involved deciding in the unwinder by heuristic if it should subtract 
one from the program counter (like the gcc unwinder apparently does) or not.

He hasn't sent a patch implementing it yet though :)

-Andi

  reply	other threads:[~2006-09-06  7:43 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-08-20  1:31 boot failure, "DWARF2 unwinder stuck at 0xc0100199" J. Bruce Fields
2006-08-20  6:35 ` Andrew Morton
2006-08-20  8:26 ` Andi Kleen
2006-08-21 15:54   ` J. Bruce Fields
2006-08-21 16:03     ` Andi Kleen
2006-08-21 16:45       ` J. Bruce Fields
2006-08-28  9:50         ` Andi Kleen
2006-08-21  6:48 ` Jan Beulich
2006-08-21 16:47   ` Randy.Dunlap
2006-08-22  4:20     ` Andrew Morton
2006-08-22  8:01       ` Andi Kleen
2006-08-22  8:18         ` Jan Beulich
2006-08-22 17:42         ` J. Bruce Fields
2006-08-24 22:40           ` J. Bruce Fields
2006-08-24 23:16             ` Andi Kleen
2006-08-22  8:01       ` Jan Beulich
2006-08-22  8:22         ` Andi Kleen
2006-08-22  8:31           ` Jan Beulich
2006-08-22  8:34             ` Andi Kleen
2006-08-22 12:40               ` Jan Beulich
2006-08-28 22:32         ` Badari Pulavarty
2006-08-28 22:54           ` Andi Kleen
2006-08-28 23:50             ` Badari Pulavarty
2006-08-22 17:52       ` J. Bruce Fields
2006-08-25 10:16         ` [patch] lockdep: annotate idescsi_pc_intr() Ingo Molnar
2006-08-29  8:53   ` Was: boot failure, "DWARF2 unwinder stuck at 0xc0100199" Borislav Petkov
2006-08-29  9:57     ` Jan Beulich
2006-08-29 11:01       ` Borislav Petkov
2006-08-29 11:08         ` Jan Beulich
2006-08-29 11:16           ` Andi Kleen
2006-08-29 13:00             ` Borislav Petkov
2006-08-29 14:36               ` Andi Kleen
2006-08-29 14:59                 ` Borislav Petkov
2006-08-30 21:46           ` Badari Pulavarty
2006-08-31  7:35             ` Jan Beulich
2006-08-31  7:41               ` Andi Kleen
2006-08-31  7:45                 ` Was: boot failure, "DWARF2 unwinder stuck at 0xc0100199" II Andi Kleen
2006-08-31  7:48                 ` Was: boot failure, "DWARF2 unwinder stuck at 0xc0100199" Jan Beulich
2006-08-31 15:02                 ` Badari Pulavarty
2006-08-31 15:16                   ` Andi Kleen
2006-08-31 16:29                     ` Badari Pulavarty
2006-08-31 18:11                     ` Badari Pulavarty
2006-08-31 18:10                       ` Andi Kleen
2006-08-31 18:33                         ` Badari Pulavarty
2006-08-31 18:32                           ` Andi Kleen
2006-09-06  6:31                 ` Keith Owens
2006-09-06  7:43                   ` Andi Kleen [this message]
  -- strict thread matches above, loose matches on Subject: below --
2006-09-01 10:12 Chuck Ebbert
2006-09-01 10:21 ` Andi Kleen

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=200609060943.14663.ak@suse.de \
    --to=ak@suse.de \
    --cc=akpm@osdl.org \
    --cc=bfields@fieldses.org \
    --cc=jbeulich@novell.com \
    --cc=kaos@ocs.com.au \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pbadari@gmail.com \
    --cc=petkov@math.uni-muenster.de \
    /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