This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[PATCH 05/10] hppa-linux-nat: Use ptid from regcache instead of inferior_ptid
- From: Simon Marchi <simon dot marchi at polymtl dot ca>
- To: gdb-patches at sourceware dot org
- Cc: Simon Marchi <simon dot marchi at polymtl dot ca>
- Date: Mon, 13 Mar 2017 23:18:14 -0400
- Subject: [PATCH 05/10] hppa-linux-nat: Use ptid from regcache instead of inferior_ptid
- Authentication-results: sourceware.org; auth=none
- References: <20170314031819.745-1-simon.marchi@polymtl.ca>
gdb/ChangeLog:
* hppa-linux-nat.c (fetch_register, store_register): Use ptid
from regcache. Use get_ptrace_pid.
---
gdb/hppa-linux-nat.c | 15 +++++----------
1 file changed, 5 insertions(+), 10 deletions(-)
diff --git a/gdb/hppa-linux-nat.c b/gdb/hppa-linux-nat.c
index 17d9ced9e5..c8eb93c51c 100644
--- a/gdb/hppa-linux-nat.c
+++ b/gdb/hppa-linux-nat.c
@@ -23,6 +23,7 @@
#include "inferior.h"
#include "target.h"
#include "linux-nat.h"
+#include "inf-ptrace.h"
#include <sys/procfs.h>
#include "nat/gdb_ptrace.h"
@@ -213,7 +214,7 @@ static void
fetch_register (struct regcache *regcache, int regno)
{
struct gdbarch *gdbarch = get_regcache_arch (regcache);
- int tid;
+ pid_t tid;
int val;
if (gdbarch_cannot_fetch_register (gdbarch, regno))
@@ -222,10 +223,7 @@ fetch_register (struct regcache *regcache, int regno)
return;
}
- /* GNU/Linux LWP ID's are process ID's. */
- tid = ptid_get_lwp (inferior_ptid);
- if (tid == 0)
- tid = ptid_get_pid (inferior_ptid); /* Not a threaded program. */
+ tid = get_ptrace_pid (regcache_get_ptid (regcache));
errno = 0;
val = ptrace (PTRACE_PEEKUSER, tid, hppa_linux_register_addr (regno, 0), 0);
@@ -243,16 +241,13 @@ static void
store_register (const struct regcache *regcache, int regno)
{
struct gdbarch *gdbarch = get_regcache_arch (regcache);
- int tid;
+ pid_t tid;
int val;
if (gdbarch_cannot_store_register (gdbarch, regno))
return;
- /* GNU/Linux LWP ID's are process ID's. */
- tid = ptid_get_lwp (inferior_ptid);
- if (tid == 0)
- tid = ptid_get_pid (inferior_ptid); /* Not a threaded program. */
+ tid = get_ptrace_pid (regcache_get_ptid (regcache));
errno = 0;
regcache_raw_collect (regcache, regno, &val);
--
2.12.0