Re: Multiple remote inferiors

Pedro Alves
2011-04-08T10:00:55Z

On Friday 08 April 2011 10:40:44, Kevin Pouget wrote:
> Hi Pedro,
>
> thanks for your answer, I gave it a try, but it seems to behave a bit strangely.

Hmm, yes, I can see how you've hit something confusing.

>
> --> should it be possible to start _two different_ processes from a single GDBServer ?

Yes.

>
> here is what I got (debugging functionPtr and stackoverflow):
>
> $ gdbserver :1234 functionPtr

This sets the default process to launch as "functionPtr".

> Process functionPtr created; pid = 10820
> Listening on port 1234
> Remote debugging from host 127.0.0.1
> Process functionPtr created; pid = 10825
>
> $ gdb functionPtr
> GNU gdb (GDB) Fedora (7.2-46.fc14)
> ...
> Reading symbols from /home/kevin/travail/arm/perso/root/sample/debug/functionPtr...done.
> (gdb) target extended-remote :1234
> Remote debugging using :1234
> ...
> (gdb) b main
> Breakpoint 1 at 0x400533: file ./functionPtr.c, line 8.
> (gdb) c
> Continuing.
> Breakpoint 1, main () at ./functionPtr.c:8
> 8 void (* my_say) (const char *) = NULL ;
>
> (gdb) add-inferior
> Added inferior 2
> (gdb) inferior 2
> [Switching to inferior 2 [Thread 0.0] (<noexec>)]
> (gdb) file stackoverflow
> Reading symbols from /home/kevin/travail/arm/perso/root/sample/debug/stackoverflow...done.

There is no automatic connection between GDB's executable, and the
executable gdbserver spawns. You also need to
do "set remote exec-file FOO"

I was assuming you'd start gdbserver with --multi, like so:

$ gdbserver --multi :9999

Which would have forced you to use that command at least once
and make the problem more obvious.

> (gdb) b main
> Breakpoint 2 at 0x400522: file stackoverflow.c, line 10.
> (gdb) r
> Starting program: /home/kevin/travail/arm/perso/root/sample/debug/stackoverflow
> Ignoring packet error, continuing...

This shouldn't happen. Is it a red herring?

> but ultimately, what I would like to do is connecting GDB to two *different* gdbservers, ie maintain two TCP connections simultaneously.

A lot to do to get there, but the good thing is that
we're closer that ever. :-)

--
Pedro Alves