Semihosting in GDB 11.1 | Proposed patch for interrupting in sync mode

Tom Tromey tom@tromey.com
Wed Mar 9 19:49:15 GMT 2022


Adrian> Unfortunately, I could not find ways to adapt all the other components I have around GDB to 
Adrian> work with target-async mode enabled. It is what it is...

I'm a little lost about this, because my mental model is that target
async shouldn't really change anything.  I think it is just an
implementation detail about where gdb waits for events -- is it in
wait() or in select()?

So, it would be interesting to learn what the differences are.  Perhaps
this can be patched up.

Adrian> Regarding the 'H' packet, I had a second look in the RSP specs
Adrian> where it's stated that '0' indicates an arbitrary
Adrian> process/thread. So, as you mentioned, I changed the GDB server
Adrian> code to simply ensure there's a valid thread stopped marked as
Adrian> 'current'. The original implementation incorrectly assimilated
Adrian> '0' with 'first thread' (always).

I'm a little surprised this matters as well, but anyway I think it's
fine to submit a patch like this.  Maybe others have some idea of what's
going on.

Tom


More information about the Gdb mailing list