Mirror of the gdb mailing list
 help / color / mirror / Atom feed
* Chicken-or-egg problem with shared libraries
@ 2006-05-23 22:59 PAUL GILLIAM
  2006-05-23 23:02 ` Daniel Jacobowitz
  0 siblings, 1 reply; 5+ messages in thread
From: PAUL GILLIAM @ 2006-05-23 22:59 UTC (permalink / raw)
  To: gdb

In solib-svr4.c (enable_break), GDB tries to set a breakpoint in the
dynamic loader (at "_dl_debug_state") so that shared objects can be
tracked as they are loaded and unloaded.

The problem (on gnu/linux PowerPC64 at least) is that the dynamic loader
is it's self a shared object and its minimal symbols are not loaded when
"enable_break" is called.  

I have two ideas for fixing this: 1) pre-load the dynamic loaders
minimal symbols so that when "enable_break()" is called,
"_dl_debug_state" will be found and all is well and 2) allow
"enable_break()" to set a pending breakpoint.

The second idea has the problem of which name to use: "enable_break()"
currently tries five or six.

I like the first idea, but something is nagging the back of my mind
about it, but I don't know what.  I think we're talking about less the
20 minimal symbols and the name of the of the dynamic linker is in the
elf section '.interp'.  So that sounds straight forward.

Any advice?

-=# Paul #=-






^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2006-05-23 23:27 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-05-23 22:59 Chicken-or-egg problem with shared libraries PAUL GILLIAM
2006-05-23 23:02 ` Daniel Jacobowitz
2006-05-23 23:27   ` PAUL GILLIAM
2006-05-23 23:32     ` Daniel Jacobowitz
2006-05-24  1:12       ` PAUL GILLIAM

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox