aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Marchi <simon.marchi@ericsson.com>2015-07-29 17:15:46 -0400
committerSimon Marchi <simon.marchi@ericsson.com>2015-07-29 17:16:20 -0400
commitaa58a496ed9a3ee19233af0bfb7c76ae02b9b2c1 (patch)
treec94a3c3648b5940b782e7496361a36b203d11aae
parentd618e4c51c73f2139a1aa8903d677a4202956f21 (diff)
downloadgdb-aa58a496ed9a3ee19233af0bfb7c76ae02b9b2c1.zip
gdb-aa58a496ed9a3ee19233af0bfb7c76ae02b9b2c1.tar.gz
gdb-aa58a496ed9a3ee19233af0bfb7c76ae02b9b2c1.tar.bz2
MIPS ptrace build fixes
Since Pedro's ptrace cleanups, the MIPS buildbot compilation fails. Code in MIPS native uses ptrace with 3 arguments, where ptrace requires 4. When looking at the definition of ptrace in /usr/include/sys/ptrace.h, it shows that it takes a variable number of arguments. The wrapper macro in nat/gdb_ptrace.h takes a fixed number of arguments (4). That would explain why it used to work and stopped. I am pushing this as obvious, tell me if there is any problem. I built-tested this with a MIPS toolchain (ct-ng), but I don't have any setup to test it. At least it should put back the buildbot builder in a better shape. gdb/ChangeLog: * mips-linux-nat.c (write_watchpoint_regs): Add NULL as ptrace's 4th parameter. (mips_linux_new_thread): Likewise. * nat/mips-linux-watch.c (mips_linux_read_watch_registers): Likewise. gdb/gdbserver/ChangeLog: * linux-mips-low.c (mips_linux_prepare_to_resume): Add NULL as ptrace's 4th parameter.
-rw-r--r--gdb/ChangeLog7
-rw-r--r--gdb/gdbserver/ChangeLog5
-rw-r--r--gdb/gdbserver/linux-mips-low.c2
-rw-r--r--gdb/mips-linux-nat.c4
-rw-r--r--gdb/nat/mips-linux-watch.c2
5 files changed, 16 insertions, 4 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 0c24f0c..8dee2da 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,10 @@
+2015-07-29 Simon Marchi <simon.marchi@ericsson.com>
+
+ * mips-linux-nat.c (write_watchpoint_regs): Add NULL as ptrace's 4th
+ parameter.
+ (mips_linux_new_thread): Likewise.
+ * nat/mips-linux-watch.c (mips_linux_read_watch_registers): Likewise.
+
2015-07-29 Patrick Palka <patrick@parcs.ath.cx>
* top.c: Include "tui/tui.h".
diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog
index 5b4236a..2e039b5 100644
--- a/gdb/gdbserver/ChangeLog
+++ b/gdb/gdbserver/ChangeLog
@@ -1,3 +1,8 @@
+2015-07-29 Simon Marchi <simon.marchi@ericsson.com>
+
+ * linux-mips-low.c (mips_linux_prepare_to_resume): Add NULL as
+ ptrace's 4th parameter.
+
2015-07-27 Yao Qi <yao.qi@linaro.org>
* configure.srv (case aarch64*-*-linux*): Don't set
diff --git a/gdb/gdbserver/linux-mips-low.c b/gdb/gdbserver/linux-mips-low.c
index d3b01d6..770f0df 100644
--- a/gdb/gdbserver/linux-mips-low.c
+++ b/gdb/gdbserver/linux-mips-low.c
@@ -427,7 +427,7 @@ mips_linux_prepare_to_resume (struct lwp_info *lwp)
int tid = ptid_get_lwp (ptid);
if (-1 == ptrace (PTRACE_SET_WATCH_REGS, tid,
- &priv->watch_mirror))
+ &priv->watch_mirror, NULL))
perror_with_name ("Couldn't write watch register");
}
diff --git a/gdb/mips-linux-nat.c b/gdb/mips-linux-nat.c
index 961cb6f..6df618d 100644
--- a/gdb/mips-linux-nat.c
+++ b/gdb/mips-linux-nat.c
@@ -614,7 +614,7 @@ write_watchpoint_regs (void)
ALL_LWPS (lp)
{
tid = ptid_get_lwp (lp->ptid);
- if (ptrace (PTRACE_SET_WATCH_REGS, tid, &watch_mirror) == -1)
+ if (ptrace (PTRACE_SET_WATCH_REGS, tid, &watch_mirror, NULL) == -1)
perror_with_name (_("Couldn't write debug register"));
}
return 0;
@@ -634,7 +634,7 @@ mips_linux_new_thread (struct lwp_info *lp)
return;
tid = ptid_get_lwp (lp->ptid);
- if (ptrace (PTRACE_SET_WATCH_REGS, tid, &watch_mirror) == -1)
+ if (ptrace (PTRACE_SET_WATCH_REGS, tid, &watch_mirror, NULL) == -1)
perror_with_name (_("Couldn't write debug register"));
}
diff --git a/gdb/nat/mips-linux-watch.c b/gdb/nat/mips-linux-watch.c
index 02d83f6..231dbe0 100644
--- a/gdb/nat/mips-linux-watch.c
+++ b/gdb/nat/mips-linux-watch.c
@@ -164,7 +164,7 @@ mips_linux_read_watch_registers (long lwpid,
{
if (force || *watch_readback_valid == 0)
{
- if (ptrace (PTRACE_GET_WATCH_REGS, lwpid, watch_readback) == -1)
+ if (ptrace (PTRACE_GET_WATCH_REGS, lwpid, watch_readback, NULL) == -1)
{
*watch_readback_valid = -1;
return 0;