This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Remove trap_ptid
- From: Pedro Alves <pedro at codesourcery dot com>
- To: gdb-patches at sourceware dot org
- Date: Thu, 15 May 2008 20:05:44 +0100
- Subject: Remove trap_ptid
Any objection to garbage collecting this?
This stopped being needed with the switch to generic_prepare_to_proceed
(nowadays prepare_to_proceed in infrun.c) a few years ago.
Tested on x86_64-unknown-linux-gnu, just in case.
I'm leaving the debug output that used it in place, in case
someone would miss it; just say so, and I'll zap it too.
--
Pedro Alves
2008-05-15 Pedro Alves <pedro@codesourcery.com>
* linux-nat.c (trap_ptid): Delete.
(linux_nat_detach, linux_nat_wait, linux_nat_mourn_inferior)
(thread_db_wait): Adjust.
---
gdb/linux-nat.c | 16 ++--------------
gdb/linux-thread-db.c | 5 -----
2 files changed, 2 insertions(+), 19 deletions(-)
Index: src/gdb/linux-nat.c
===================================================================
--- src.orig/gdb/linux-nat.c 2008-05-15 17:54:26.000000000 +0100
+++ src/gdb/linux-nat.c 2008-05-15 17:55:45.000000000 +0100
@@ -790,11 +790,6 @@ struct lwp_info *lwp_list;
static int num_lwps;
-/* If the last reported event was a SIGTRAP, this variable is set to
- the process id of the LWP/thread that got it. */
-ptid_t trap_ptid;
-
-
/* Since we cannot wait (in linux_nat_wait) for the initial process and
any cloned processes with a single call to waitpid, we have to use
the WNOHANG flag and call waitpid in a loop. To optimize
@@ -1404,8 +1399,6 @@ linux_nat_detach (char *args, int from_t
target_pid_to_str (lwp_list->ptid));
}
- trap_ptid = null_ptid;
-
/* Destroy LWP info; it's no longer valid. */
init_lwp_list ();
@@ -2777,14 +2770,11 @@ retry:
if (WIFSTOPPED (status) && WSTOPSIG (status) == SIGTRAP)
{
- trap_ptid = lp->ptid;
if (debug_linux_nat)
fprintf_unfiltered (gdb_stdlog,
- "LLW: trap_ptid is %s.\n",
- target_pid_to_str (trap_ptid));
+ "LLW: trap ptid is %s.\n",
+ target_pid_to_str (lp->ptid));
}
- else
- trap_ptid = null_ptid;
if (lp->waitstatus.kind != TARGET_WAITKIND_IGNORE)
{
@@ -2916,8 +2906,6 @@ linux_nat_kill (void)
static void
linux_nat_mourn_inferior (void)
{
- trap_ptid = null_ptid;
-
/* Destroy LWP info; it's no longer valid. */
init_lwp_list ();
Index: src/gdb/linux-thread-db.c
===================================================================
--- src.orig/gdb/linux-thread-db.c 2008-05-15 17:54:23.000000000 +0100
+++ src/gdb/linux-thread-db.c 2008-05-15 17:55:58.000000000 +0100
@@ -823,8 +823,6 @@ check_event (ptid_t ptid)
static ptid_t
thread_db_wait (ptid_t ptid, struct target_waitstatus *ourstatus)
{
- extern ptid_t trap_ptid;
-
ptid = target_beneath->to_wait (ptid, ourstatus);
if (ourstatus->kind == TARGET_WAITKIND_IGNORE)
@@ -861,9 +859,6 @@ thread_db_wait (ptid_t ptid, struct targ
event gets postponed by other simultaneous events. In such a
case, we want to just ignore the event and continue on. */
- if (!ptid_equal (trap_ptid, null_ptid))
- trap_ptid = thread_from_lwp (trap_ptid);
-
ptid = thread_from_lwp (ptid);
if (GET_PID (ptid) == -1)
ourstatus->kind = TARGET_WAITKIND_SPURIOUS;