This is the mail archive of the gdb@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: How to tell gdb about dlls using remote protocol


On Fri, Feb 02, 2007 at 08:51:55AM -0800, Joel Brobecker wrote:
> > Sorry, I have to disagree from my own experience.  Pretty much any time
> > you stop a running program it's in those DLLs.  And this is doubly true
> > for any threaded program - there's always a couple of threads that I
> > have no idea what the heck they're doing.
> 
> In fact, we have a local modification in our tree (different from the
> one I recently suggested) where we default to using %ebp when inside a
> frameless function, and inside a DLL.  This is a heuristic way to handle
> all those highly optimized functions for which prologue analysis cannot
> be used. Short of implementing support for MS symbol info, this is the
> only way we could get the backtrace of most threads. This is a hack I
> didn't submit because it's a bit crude, and it only exchanges certain
> failures for others - but we have found in practice that this was the
> right choice for us. I can certainly post it too, if you are interested.

Hmm, perhaps it successfully gets you out and only misses frames.  I'm
pretty sure I remember that when debugging a Windows build of GDB, the
select helper threads live somewhere in NTDLL without a valid frame.

I'd be curious to see it, at least, but I'm not sure what we can do.

-- 
Daniel Jacobowitz
CodeSourcery


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]