diff options
author | Markus Metzger <markus.t.metzger@intel.com> | 2015-09-07 10:00:46 +0200 |
---|---|---|
committer | Markus Metzger <markus.t.metzger@intel.com> | 2015-09-18 14:26:28 +0200 |
commit | d1988021e345c990f4272843577529a123f8943d (patch) | |
tree | d225ad7c1289a2739c3d74d695327d437a60f60e /gdb/target.h | |
parent | a6b5be76f94664406def040d79ac8bc4d4aa8bd0 (diff) | |
download | gdb-d1988021e345c990f4272843577529a123f8943d.zip gdb-d1988021e345c990f4272843577529a123f8943d.tar.gz gdb-d1988021e345c990f4272843577529a123f8943d.tar.bz2 |
infrun: switch to NO_HISTORY thread
A thread that runs out of its execution history is stopped. We already set
stop_pc and call stop_waiting. But we do not switch to the stopped thread.
In normal_stop, we call finish_thread_state_cleanup to set a thread's running
state. In all-stop mode, we call it with minus_one_ptid; in non-stop mode, we
only call it for inferior_ptid.
If in non-stop mode normal_stop is called on behalf of a thread that is not
inferior_ptid, that other thread will still be reported as running. If it is
actually stopped it can't be resumed again.
Record targets traditionally don't support non-stop and only resume
inferior_ptid. So this has not been a problem, so far.
Switch to the eventing thread for NO_HISTORY events as preparation to support
non-stop for the record btrace target.
gdb/
* infrun.c (handle_inferior_event_1): Switch to the eventing thread
in the TARKET_WAITKIND_NO_HISTORY case.
Diffstat (limited to 'gdb/target.h')
0 files changed, 0 insertions, 0 deletions