Problems with non-stop - Porting gdb to Cyclops64

Brian Heilig bheilig@etinternational.com
Fri Aug 6 18:39:00 GMT 2010


Dear list,

I am having trouble making gdb happy in non-stop mode. When I connect to
my target in non-stop mode gdb queries for the list of active threads.
It then sends a stop request for the first thread in the list,
"vCont;t:1".

The documentation for this feature states: "A stop reply should be
generated for any affected thread not already stopped. When a thread is
stopped by means of a `t' action, the corresponding stop reply should
indicate that the thread has stopped with signal `0', regardless of
whether the target uses some other signal as an implementation detail."

So I send back my stop response: "$T00;thread:1;". gdb responds with
"Stopping Thread 1 failed: T00;thread:1;" and disconnects from the
target.

I tried this same test on my Linux desktop using version 7.1-ubuntu and
received a very different response.

Server: gdbserver :0 a.out
Client: gdb a.out

Set non-stop on the client and then connect with "target
remote :<port>".

Client sends "vCont;t:<thread>"

Server responds with "$OK". The gdb prompt never appears and (as far as
I can tell) nothing can be done with the gdb session.

Am I doing something wrong?

Thanks,
Brian




More information about the Gdb mailing list