Re: Host GDB disconnect while waiting for tracee status change

Pedro Alves <[email protected]>
Newsgroups gmane.comp.gdb.devel
Message-ID <[email protected]>
On 08/23/2017 10:37 AM, Dmitry Antipov wrote:

> Immediately after killing gdb, gdbserver reports:
> ...
> client connection closed
> my_waitpid (-1, 0x40000001)
> my_waitpid (-1, 0x40000001): status(ffffffff), 0
> LWFE: waitpid(-1, ...) returned 0, ERRNO-OK
> leader_pid=21352, leader_lp!=NULL=1, num_lwps=1, zombie=0
> sigsuspend'ing
> ...
> 
> Next, a new instance of gdb is unable to reconnect:

...

> And it seems that there is no similar issue in a non-stop mode. For
> example:

...

> This way, a new instance of gdb can reconnect:

Right, because in non-stop mode, linux-low.c doesn't
usually block inside mywait....sigsuspend.  See server.c:resume.
In non-stop mode, gdbserver waits for both socket events and
target events at the same time in the event loop.  The
non-stop variant of the RSP is asynchronous.

Thanks,
Pedro Alves
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.