aboutsummaryrefslogtreecommitdiff
path: root/gdb/ChangeLog
diff options
context:
space:
mode:
authorPedro Alves <palves@redhat.com>2011-09-09 19:27:50 +0000
committerPedro Alves <palves@redhat.com>2011-09-09 19:27:50 +0000
commit25289eb274bff1f2052ecea034171ff2b6970c94 (patch)
tree12d16820d3646403134db7e8904463316ae897f5 /gdb/ChangeLog
parentf687d035648db21290f4528e84713c8d9d2fde19 (diff)
downloadgdb-25289eb274bff1f2052ecea034171ff2b6970c94.zip
gdb-25289eb274bff1f2052ecea034171ff2b6970c94.tar.gz
gdb-25289eb274bff1f2052ecea034171ff2b6970c94.tar.bz2
2011-09-09 Pedro Alves <pedro@codesourcery.com>
* linux-nat.h (enum resume_kind): New. (struct lwp_info) <last_resume_kind>: New field. (linux_child_follow_fork): Set last_resume_kind to resume_stop on the new lwp. (add_lwp): Set last_resume_kind as resume_continue by default. (lin_lwp_attach_lwp): Set last_resume_kind as resume_stop. (resume_lwp): New, factored out from resume_callback. Also check for pending status in lp->waitstatus. (resume_callback): Reimplement. (resume_clear_callback): Set last_resume_kind as resume_stop. (resume_set_callback): Set last_resume_kind as resume_continue. (linux_nat_resume, linux_handle_extended_wait): Set last_resume_kind. (running_callback): Also check lp->waitstatus for pending events. (select_singlestep_lwp_callback): Check that lp->last_resume_kind is resume_step. (stop_and_resume_callback): Don't re-resume if the core wanted the lwp stopped. Use resume_lwp instead of resume_callback. Avoid using an invalidated pointer. (linux_nat_filter_event): Don't discard SIGSTOPs as delayed SIGSTOPs if the core wanted the LWP to stop. (linux_nat_wait_1) Don't consume a pending SIGSTOP if the core wanted the lwp to stop. If the core wanted the lwp to stop, and the lwp stopped with a SIGSTOP, report a TARGET_SIGNAL_0 instead of TARGET_SIGNAL_STOP. (linux_nat_stop_lwp): Don't synchronously wait for the lwp to stop here. Instead, signal the lwp, and set the last_resume_kind to resume_stop.
Diffstat (limited to 'gdb/ChangeLog')
-rw-r--r--gdb/ChangeLog31
1 files changed, 31 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 8102cff..c538581 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,36 @@
2011-09-09 Pedro Alves <pedro@codesourcery.com>
+ * linux-nat.h (enum resume_kind): New.
+ (struct lwp_info) <last_resume_kind>: New field.
+ (linux_child_follow_fork): Set last_resume_kind to resume_stop on
+ the new lwp.
+ (add_lwp): Set last_resume_kind as resume_continue by default.
+ (lin_lwp_attach_lwp): Set last_resume_kind as resume_stop.
+ (resume_lwp): New, factored out from resume_callback. Also check
+ for pending status in lp->waitstatus.
+ (resume_callback): Reimplement.
+ (resume_clear_callback): Set last_resume_kind as resume_stop.
+ (resume_set_callback): Set last_resume_kind as resume_continue.
+ (linux_nat_resume, linux_handle_extended_wait): Set
+ last_resume_kind.
+ (running_callback): Also check lp->waitstatus for pending events.
+ (select_singlestep_lwp_callback): Check that lp->last_resume_kind
+ is resume_step.
+ (stop_and_resume_callback): Don't re-resume if the core wanted the
+ lwp stopped. Use resume_lwp instead of resume_callback. Avoid
+ using an invalidated pointer.
+ (linux_nat_filter_event): Don't discard SIGSTOPs as delayed
+ SIGSTOPs if the core wanted the LWP to stop.
+ (linux_nat_wait_1) Don't consume a pending SIGSTOP if the core
+ wanted the lwp to stop. If the core wanted the lwp to stop, and
+ the lwp stopped with a SIGSTOP, report a TARGET_SIGNAL_0 instead
+ of TARGET_SIGNAL_STOP.
+ (linux_nat_stop_lwp): Don't synchronously wait for the lwp to stop
+ here. Instead, signal the lwp, and set the last_resume_kind to
+ resume_stop.
+
+2011-09-09 Pedro Alves <pedro@codesourcery.com>
+
* linux-nat.c (lin_lwp_attach_lwp): Return 1 (ignore) instead of
-1 (error), if the lwp exits right after attaching.