Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Mark Kettenis <mark.kettenis@xs4all.nl>
To: drow@false.org
Cc: gdb-patches@sourceware.org
Subject: Re: [patch RFC] Re: Notes on a frame_unwind_address_in_block problem
Date: Mon, 01 Jan 2007 20:27:00 -0000	[thread overview]
Message-ID: <200701012026.l01KQj6h022478@brahms.sibelius.xs4all.nl> (raw)
In-Reply-To: <20070101200248.GA19073@nevyn.them.org> (message from Daniel 	Jacobowitz on Mon, 1 Jan 2007 15:02:48 -0500)

> Date: Mon, 1 Jan 2007 15:02:48 -0500
> From: Daniel Jacobowitz <drow@false.org>
> 
> > making sure we set the right function address for signal trampolines?
> > That is, shouldn't we have a dwarf2_signal_frame_this_id() that
> > chooses a more sensible code address than frame_func_unwind()?
> 
> That would fix the failing tests, but I'm worried about problems
> elsewhere.  That's what I did in the patch I posted in July, I think.
> But get_frame_func would still return different values depending
> on whether the frame was topmost or not.  That's called all over GDB -
> I can't figure out whether it will leave other bugs for us to
> stumble on later.

But if you're calling get_frame_func() you've already got a frame, so
you should know everything about it.  The place to fix things is
probably get_frame_address_in_block().  For one thing it's probably
not a good idea to return an address that's lower than the code
address in the frame ID.  Or perhaps it is enough to look at the
frame's type and simply call frame_pc_unwind for SIGTRAMP_FRAMEs.

> Hmm... I don't think it's possible, but it depends what qualifier you
> meant to put on "all targets".  The only way I can see to do it would
> be with hand-written assembly and CFI and stack manipulation.  I might
> be able to write a test which worked on all x86-64 systems and
> pretended to have create a signal frame, if that's what you wanted.

Hmm, sorry yes, a test that would work on all i386 or x86-64 target
was what I actually meant.


  reply	other threads:[~2007-01-01 20:27 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20060706222157.GA1377@nevyn.them.org>
     [not found] ` <200607132020.k6DKKCSB023812@elgar.sibelius.xs4all.nl>
     [not found]   ` <20060718183910.GB17864@nevyn.them.org>
2007-01-01 19:19     ` Daniel Jacobowitz
2007-01-01 19:54       ` Mark Kettenis
2007-01-01 20:02         ` Daniel Jacobowitz
2007-01-01 20:27           ` Mark Kettenis [this message]
2007-01-01 20:35             ` Daniel Jacobowitz
2007-01-02  0:51               ` Daniel Jacobowitz
2007-01-02 19:16                 ` Mark Kettenis
2007-01-02 19:18                   ` Daniel Jacobowitz
2007-01-02 19:20                     ` Daniel Jacobowitz
2007-01-02 21:32                     ` Mark Kettenis
2007-01-03 11:37           ` Mark Kettenis
2007-01-03 14:43             ` Daniel Jacobowitz
2007-01-03 16:13             ` Daniel Jacobowitz
2007-01-03 20:28               ` Mark Kettenis
2007-01-03 20:30                 ` Daniel Jacobowitz
2007-01-03 21:58                   ` Mark Kettenis
2007-01-03 22:02                     ` Daniel Jacobowitz
2007-01-03 22:23                       ` Mark Kettenis
2007-01-03 22:29                         ` Daniel Jacobowitz
2007-02-20 12:39                           ` Daniel Jacobowitz
2007-02-20 15:31                             ` Daniel Jacobowitz
2007-02-20 16:20                               ` Daniel Jacobowitz
2007-02-22 21:28                             ` Mark Kettenis
2007-02-22 21:32                               ` Daniel Jacobowitz
2007-02-27 20:18                                 ` Daniel Jacobowitz

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=200701012026.l01KQj6h022478@brahms.sibelius.xs4all.nl \
    --to=mark.kettenis@xs4all.nl \
    --cc=drow@false.org \
    --cc=gdb-patches@sourceware.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox