aboutsummaryrefslogtreecommitdiff
path: root/gdb/mips-linux-nat.c
diff options
context:
space:
mode:
authorYao Qi <yao.qi@linaro.org>2017-04-28 09:33:16 +0100
committerYao Qi <yao.qi@linaro.org>2017-04-28 09:33:16 +0100
commit7974a6050b6e2c44722a533e2d5d9131e7db00ff (patch)
treeef7d930a36154a2be518b2ca687c464263485faa /gdb/mips-linux-nat.c
parent343b374c61f793f745b820c3cf61f69186566b18 (diff)
downloadgdb-7974a6050b6e2c44722a533e2d5d9131e7db00ff.zip
gdb-7974a6050b6e2c44722a533e2d5d9131e7db00ff.tar.gz
gdb-7974a6050b6e2c44722a533e2d5d9131e7db00ff.tar.bz2
[MIPS] Use lwpid from lwp_info instead of inferior_ptid
RAJESH reported that GDB gets "Couldn't write debug register: No such process." on mips64 when GDB attaches to a multi threaded application. Looks GDB nows PTRACE_GET_WATCH_REGS for inferior_ptid but PTRACE_SET_WATCH_REGS for lwp->ptid, they may be different. gdb: 2017-04-28 Yao Qi <yao.qi@linaro.org> * mips-linux-nat.c (mips_linux_new_thread): Get lwpid from lwp_info instead of getting from inferior_ptid.
Diffstat (limited to 'gdb/mips-linux-nat.c')
-rw-r--r--gdb/mips-linux-nat.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/gdb/mips-linux-nat.c b/gdb/mips-linux-nat.c
index 9596b49..c5c18fd 100644
--- a/gdb/mips-linux-nat.c
+++ b/gdb/mips-linux-nat.c
@@ -624,14 +624,13 @@ write_watchpoint_regs (void)
static void
mips_linux_new_thread (struct lwp_info *lp)
{
- int tid;
+ long tid = ptid_get_lwp (lp->ptid);
- if (!mips_linux_read_watch_registers (ptid_get_lwp (inferior_ptid),
+ if (!mips_linux_read_watch_registers (tid,
&watch_readback,
&watch_readback_valid, 0))
return;
- tid = ptid_get_lwp (lp->ptid);
if (ptrace (PTRACE_SET_WATCH_REGS, tid, &watch_mirror, NULL) == -1)
perror_with_name (_("Couldn't write debug register"));
}