* linux-nat.c (trap_ptid): Delete.
authorPedro Alves <palves@redhat.com>
Thu, 15 May 2008 20:11:48 +0000 (20:11 +0000)
committerPedro Alves <palves@redhat.com>
Thu, 15 May 2008 20:11:48 +0000 (20:11 +0000)
(linux_nat_detach, linux_nat_wait, linux_nat_mourn_inferior):
Adjust.
* linux-thread-db.c (thread_db_wait): Adjust.

gdb/ChangeLog
gdb/linux-nat.c
gdb/linux-thread-db.c

index d0e5df8..f2357a6 100644 (file)
@@ -1,3 +1,10 @@
+2008-05-15  Pedro Alves  <pedro@codesourcery.com>
+
+       * linux-nat.c (trap_ptid): Delete.
+       (linux_nat_detach, linux_nat_wait, linux_nat_mourn_inferior):
+       Adjust.
+       * linux-thread-db.c (thread_db_wait): Adjust.
+
 2008-05-15  Joel Brobecker  <brobecker@adacore.com>
 
        * linespec.c (decode_line_1): Fix a couple of comments.
index 5d15d42..091e641 100644 (file)
@@ -790,11 +790,6 @@ struct lwp_info *lwp_list;
 static int num_lwps;
 \f
 
-/* 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;
-\f
-
 /* 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_tty)
                          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 c7aaf60..2ae2f5c 100644 (file)
@@ -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 target_waitstatus *ourstatus)
         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;