* 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.
This commit is contained in:
Pedro Alves 2008-05-15 20:11:48 +00:00
parent bc882aa937
commit 4fdebdd056
3 changed files with 9 additions and 19 deletions

View 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.

View File

@ -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_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 ();

View 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;