diff options
author | Mark Kettenis <kettenis@gnu.org> | 2001-03-28 08:35:14 +0000 |
---|---|---|
committer | Mark Kettenis <kettenis@gnu.org> | 2001-03-28 08:35:14 +0000 |
commit | b9511b9a9a06835ac22efe5e37f54aec65f3219e (patch) | |
tree | 5993ad2fb2c6226c09abd7d8f07a74357c736097 /gdb/i386-linux-nat.c | |
parent | 30a1def20d43b665660f606caa2dbe1c0b88b8e3 (diff) | |
download | gdb-b9511b9a9a06835ac22efe5e37f54aec65f3219e.zip gdb-b9511b9a9a06835ac22efe5e37f54aec65f3219e.tar.gz gdb-b9511b9a9a06835ac22efe5e37f54aec65f3219e.tar.bz2 |
* i386-linux-nat.c (i386_linux_dr_get): Return 0 if ptrace call
fails instead of calling perror_with_name. This should fix
debugging remote i386 targets with a native Linux/x86 GDB. Add
FIXME for this hack.
Diffstat (limited to 'gdb/i386-linux-nat.c')
-rw-r--r-- | gdb/i386-linux-nat.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/gdb/i386-linux-nat.c b/gdb/i386-linux-nat.c index aac9289..66b0159 100644 --- a/gdb/i386-linux-nat.c +++ b/gdb/i386-linux-nat.c @@ -712,11 +712,20 @@ i386_linux_dr_get (int regnum) one thread. */ tid = PIDGET (inferior_pid); + /* FIXME: kettenis/2001-03-27: Calling perror_with_name if the + ptrace call fails breaks debugging remote targets. The correct + way to fix this is to add the hardware breakpoint and watchpoint + stuff to the target vectore. For now, just return zero if the + ptrace call fails. */ errno = 0; value = ptrace (PT_READ_U, tid, offsetof (struct user, u_debugreg[regnum]), 0); if (errno != 0) +#if 0 perror_with_name ("Couldn't read debug register"); +#else + return 0; +#endif return value; } |