gdb: add assert in remote_target::wait relating to async being off
authorAndrew Burgess <aburgess@redhat.com>
Mon, 22 Nov 2021 12:30:36 +0000 (12:30 +0000)
committerAndrew Burgess <aburgess@redhat.com>
Thu, 25 Nov 2021 10:00:40 +0000 (10:00 +0000)
commit32b1f5e8d6b8ddd3be6e471c26dd85a1dac31dda
treed3d10088abdd7e89c7d1c360386d35406ae4d043
parent7054fa5bcaea3ce1a2f10a8ca550db96564035db
gdb: add assert in remote_target::wait relating to async being off

While working on another patch I ended up in a situation where I had
async mode disabled (with 'maint set target-async off'), but the async
event token got marked anyway.

In this situation GDB was continually calling into
remote_target::wait, however, the async token would never become
unmarked as the unmarking is guarded by target_is_async_p.

We could just unconditionally unmark the token, but that would feel
like just ignoring a bug, so, instead, lets assert that if
!target_is_async_p, then the async token should not be marked.

This assertion would have caught my earlier mistake.

There should be no user visible changes with this commit.
gdb/remote.c