aboutsummaryrefslogtreecommitdiff
path: root/gdb/gdbserver
diff options
context:
space:
mode:
authorYao Qi <yao@codesourcery.com>2012-06-12 14:02:15 +0000
committerYao Qi <yao@codesourcery.com>2012-06-12 14:02:15 +0000
commit0c9070b30af40e837ae05cdbaf6f486690fffaf8 (patch)
treea4672918530bb037eb9a7a8eee5b3b282a70467b /gdb/gdbserver
parent8981c88a1e028446400c393b82fc415481cc07c3 (diff)
downloadgdb-0c9070b30af40e837ae05cdbaf6f486690fffaf8.zip
gdb-0c9070b30af40e837ae05cdbaf6f486690fffaf8.tar.gz
gdb-0c9070b30af40e837ae05cdbaf6f486690fffaf8.tar.bz2
gdb/gdbserver:
* linux-low.c (linux_set_resume_request): Simplify predicate. Add comment. * server.c (handle_v_cont): Extend comment.
Diffstat (limited to 'gdb/gdbserver')
-rw-r--r--gdb/gdbserver/ChangeLog7
-rw-r--r--gdb/gdbserver/linux-low.c9
-rw-r--r--gdb/gdbserver/server.c4
3 files changed, 14 insertions, 6 deletions
diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog
index a64e8a2..5885683 100644
--- a/gdb/gdbserver/ChangeLog
+++ b/gdb/gdbserver/ChangeLog
@@ -1,3 +1,10 @@
+2012-06-12 Yao Qi <yao@codesourcery.com>
+ Pedro Alves <palves@redhat.com>
+
+ * linux-low.c (linux_set_resume_request): Simplify predicate. Add
+ comment.
+ * server.c (handle_v_cont): Extend comment.
+
2012-06-11 Yao Qi <yao@codesourcery.com>
* linux-low.c (linux_attach): Add 'static'.
diff --git a/gdb/gdbserver/linux-low.c b/gdb/gdbserver/linux-low.c
index 3e88c42..3d116fd 100644
--- a/gdb/gdbserver/linux-low.c
+++ b/gdb/gdbserver/linux-low.c
@@ -3339,10 +3339,11 @@ linux_set_resume_request (struct inferior_list_entry *entry, void *arg)
ptid_t ptid = r->resume[ndx].thread;
if (ptid_equal (ptid, minus_one_ptid)
|| ptid_equal (ptid, entry->id)
- || (ptid_is_pid (ptid)
- && (ptid_get_pid (ptid) == pid_of (lwp)))
- || (ptid_get_lwp (ptid) == -1
- && (ptid_get_pid (ptid) == pid_of (lwp))))
+ /* Handle both 'pPID' and 'pPID.-1' as meaning 'all threads
+ of PID'. */
+ || (ptid_get_pid (ptid) == pid_of (lwp)
+ && (ptid_is_pid (ptid)
+ || ptid_get_lwp (ptid) == -1)))
{
if (r->resume[ndx].kind == resume_stop
&& thread->last_resume_kind == resume_stop)
diff --git a/gdb/gdbserver/server.c b/gdb/gdbserver/server.c
index 9fd550b..96aa54b 100644
--- a/gdb/gdbserver/server.c
+++ b/gdb/gdbserver/server.c
@@ -1974,8 +1974,8 @@ handle_v_cont (char *own_buf)
/* `cont_thread' is still used in occasional places in the backend,
to implement single-thread scheduler-locking. Doesn't make sense
- to set it if we see a stop request, or any form of wildcard
- vCont. */
+ to set it if we see a stop request, or a wildcard action (one
+ with '-1' (all threads), or 'pPID.-1' (all threads of PID)). */
if (n == 1
&& !(ptid_equal (resume_info[0].thread, minus_one_ptid)
|| ptid_get_lwp (resume_info[0].thread) == -1)