Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Mark Kettenis <mark.kettenis@xs4all.nl>
To: brobecker@adacore.com
Cc: Wiljan.Derks@zonnet.nl, gdb@sourceware.org
Subject: Re: How to tell gdb about dlls using remote protocol
Date: Wed, 07 Feb 2007 22:14:00 -0000	[thread overview]
Message-ID: <200702072214.l17MER45023107@brahms.sibelius.xs4all.nl> (raw)
In-Reply-To: <20070201175311.GG17864@adacore.com> (message from Joel Brobecker 	on Thu, 1 Feb 2007 09:53:11 -0800)

> X-Spam-Check-By: sourceware.org
> Date: Thu, 1 Feb 2007 09:53:11 -0800
> From: Joel Brobecker <brobecker@adacore.com>
> Content-Disposition: inline
> Mailing-List: contact gdb-help@sourceware.org; run by ezmlm
> Sender: gdb-owner@sourceware.org
> X-UTwente-MailScanner-Information: Scanned by MailScanner. Contact helpdesk@ITBE.utwente.nl for more information.
> X-UTwente-MailScanner: Found to be clean
> X-UTwente-MailScanner-From: gdb-return-27623-m.m.kettenis=alumnus.utwente.nl@sourceware.org
> X-Spam-Status: No
> X-XS4ALL-DNSBL-Checked: mxdrop39.xs4all.nl checked 130.89.2.13 against DNS blacklists
> X-Virus-Scanned: by XS4ALL Virus Scanner
> X-XS4ALL-Spam-Score: -2.0 () DK_POLICY_SIGNSOME,RCVD_IN_NLWHITE
> X-XS4ALL-Spam: NO
> Envelope-To: mark.kettenis@xs4all.nl
> X-UIDL: 1170352362._smtp.mxdrop39.85044,S=5181
> 
> 
> --vkogqOf2sHV7VnPd
> Content-Type: text/plain; charset=us-ascii
> Content-Disposition: inline
> 
> Hi Daniel,
> 
> > > The problem that I have run into, is that I can find no way to let gdb know 
> > > what dll's are inside the
> > > debugee using the remote protocol.
> > > 
> > > Does anyone know if there is a way to do this ?
> > 
> > There's no way to do this yet.  If you look at the list archives for
> > the last several months, you'll see a patch (in the "GDB solib
> > interface" thread) that implements something which might help.  But it
> > hasn't been finalized or committed yet (sorry Stephen - I just haven't
> > had time).
> 
> This makes me wonder how well the debugger can work in certain
> situations like when backtracing from DLL code. If the debugger
> doesn't know where it is, then it's probably let to prologue analysis
> to do the unwinding. Except that it cannot determine where the prologue
> is... In that case, I see that the i386 unwinder assumes that the frame
> base can be deduced from the SP and the SP offset. Unfortunately,
> this SP offset can only be deduced from prologue analysis. Catch 22?
> 
> Mark,
> 
> What do you think of this (untested) patch? We we couldn't find
> the function start address, the safest seems to be relying on ebp.

I think this diff makes sense.  However, I'm pretty sure there are
Linux systems out there where this will make things worse :(.  In
particular, on kernels with a vsyscall page buit without the stub
shared library for that page, this change will systematically skip a
frame.  And that frame is quite crucial since it is the frame for the
libc system call stub, so it will be hard for a user to find out in
what system call the program is blocked on.

I have no idea though how many people are still runing those kernels.
That number might be very low enough for us not to care.

Mark


  parent reply	other threads:[~2007-02-07 22:14 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-01-31 21:08 Wiljan Derks
2007-01-31 22:31 ` Daniel Jacobowitz
2007-02-01 17:52   ` Joel Brobecker
2007-02-01 22:54     ` Daniel Jacobowitz
2007-02-01 23:02       ` Joel Brobecker
2007-02-01 23:59         ` Daniel Jacobowitz
2007-02-02  6:20           ` Robert Dewar
2007-02-02 11:43             ` Daniel Jacobowitz
2007-02-02 16:51               ` Joel Brobecker
2007-02-02 16:56                 ` Daniel Jacobowitz
2007-02-02 17:34                   ` Joel Brobecker
2007-02-05 20:34                     ` Wiljan Derks
2007-02-05 21:21                       ` Joel Brobecker
2007-02-07 21:47                     ` Mark Kettenis
2007-02-07 22:14     ` Mark Kettenis [this message]
2007-02-07 22:17       ` Daniel Jacobowitz
2007-02-08 21:14         ` Mark Kettenis
2007-02-08 23:00           ` Daniel Jacobowitz
2007-02-14  8:51             ` Joel Brobecker

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=200702072214.l17MER45023107@brahms.sibelius.xs4all.nl \
    --to=mark.kettenis@xs4all.nl \
    --cc=Wiljan.Derks@zonnet.nl \
    --cc=brobecker@adacore.com \
    --cc=gdb@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