mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-03 13:23:00 +08:00
* linux-nat.c (linux_nat_attach): Add the pid we attached to, to
gdb's thread list. (linux_nat_wait): Add main lwp to gdb's thread list. * linux-thread-db.c (find_new_threads_callback): Also attach to already listed threads which thread_db didn't know about yet.
This commit is contained in:
@ -1,3 +1,11 @@
|
|||||||
|
2008-03-25 Pedro Alves <pedro@codesourcery.com>
|
||||||
|
|
||||||
|
* linux-nat.c (linux_nat_attach): Add the pid we attached to, to
|
||||||
|
gdb's thread list.
|
||||||
|
(linux_nat_wait): Add main lwp to gdb's thread list.
|
||||||
|
* linux-thread-db.c (find_new_threads_callback): Also attach to
|
||||||
|
already listed threads which thread_db didn't know about yet.
|
||||||
|
|
||||||
2008-03-25 Pedro Alves <pedro@codesourcery.com>
|
2008-03-25 Pedro Alves <pedro@codesourcery.com>
|
||||||
|
|
||||||
* linux-nat.c (drain_queued_events): Fix comment typo.
|
* linux-nat.c (drain_queued_events): Fix comment typo.
|
||||||
|
@ -1173,6 +1173,10 @@ linux_nat_attach (char *args, int from_tty)
|
|||||||
lp = add_lwp (inferior_ptid);
|
lp = add_lwp (inferior_ptid);
|
||||||
lp->cloned = cloned;
|
lp->cloned = cloned;
|
||||||
|
|
||||||
|
/* If this process is not using thread_db, then we still don't
|
||||||
|
detect any other threads, but add at least this one. */
|
||||||
|
add_thread_silent (lp->ptid);
|
||||||
|
|
||||||
lp->stopped = 1;
|
lp->stopped = 1;
|
||||||
lp->resumed = 1;
|
lp->resumed = 1;
|
||||||
|
|
||||||
@ -2387,6 +2391,8 @@ linux_nat_wait (ptid_t ptid, struct target_waitstatus *ourstatus)
|
|||||||
GET_PID (inferior_ptid));
|
GET_PID (inferior_ptid));
|
||||||
lp = add_lwp (inferior_ptid);
|
lp = add_lwp (inferior_ptid);
|
||||||
lp->resumed = 1;
|
lp->resumed = 1;
|
||||||
|
/* Add the main thread to GDB's thread list. */
|
||||||
|
add_thread_silent (lp->ptid);
|
||||||
}
|
}
|
||||||
|
|
||||||
sigemptyset (&flush_mask);
|
sigemptyset (&flush_mask);
|
||||||
|
@ -918,6 +918,7 @@ find_new_threads_callback (const td_thrhandle_t *th_p, void *data)
|
|||||||
td_thrinfo_t ti;
|
td_thrinfo_t ti;
|
||||||
td_err_e err;
|
td_err_e err;
|
||||||
ptid_t ptid;
|
ptid_t ptid;
|
||||||
|
struct thread_info *tp;
|
||||||
|
|
||||||
err = td_thr_get_info_p (th_p, &ti);
|
err = td_thr_get_info_p (th_p, &ti);
|
||||||
if (err != TD_OK)
|
if (err != TD_OK)
|
||||||
@ -945,7 +946,8 @@ find_new_threads_callback (const td_thrhandle_t *th_p, void *data)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!in_thread_list (ptid))
|
tp = find_thread_pid (ptid);
|
||||||
|
if (tp == NULL || tp->private == NULL)
|
||||||
attach_thread (ptid, th_p, &ti);
|
attach_thread (ptid, th_p, &ti);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
Reference in New Issue
Block a user