[RFA 4/4 take 2] Improved linker-debugger interface

Jan Kratochvil jan.kratochvil@redhat.com
Fri Sep 28 10:58:00 GMT 2012


On Fri, 28 Sep 2012 12:51:45 +0200, Gary Benson wrote:
> dlmopen support requires the local cache that incremental updating
> uses, because when you stop to update a namespace's so_list you can
> only see the address of that namespace in the inferior.  The other
> namespace's so_lists are fetched from the cache, so either gdb or
> gdbserver will have to maintain a cache somewhere.  I'm tempted to
> retain the cache in gdb, and have gdbserver send namespace updates.

I believe it is needed to resolve the dlmopen support from core files.
Otherwise this new code may be based on wrong expectations.

If you are not going to implement dlmopen from core files please drop the
dlmopen support.


> I'm trying to understand the existing interface between gdb and
> gdbserver.  Does gdb request a library list and gdbserver send one,

Yes.

> or does gdbserver recognise the stop and send one, and gdb assumes
> it's been sent one and try to read it?

No.

GDB still places the breakpoint (formerly at _dl_debug_state) and when it is
hit gdb->gdbserver sends the request packet: $qXfer:libraries-svr4:read::0,fff#


Thanks,
Jan



More information about the Gdb-patches mailing list