From patchwork Tue Mar 14 03:18:14 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Simon Marchi X-Patchwork-Id: 19566 Received: (qmail 28078 invoked by alias); 14 Mar 2017 03:37:00 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Delivered-To: mailing list gdb-patches@sourceware.org Received: (qmail 27954 invoked by uid 89); 14 Mar 2017 03:36:59 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-21.8 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, RCVD_IN_DNSWL_NONE, SPF_SOFTFAIL, UNWANTED_LANGUAGE_BODY autolearn=ham version=3.3.2 spammy=Hx-languages-length:1766 X-HELO: barracuda.ebox.ca Received: from barracuda.ebox.ca (HELO barracuda.ebox.ca) (96.127.255.19) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 14 Mar 2017 03:36:57 +0000 X-ASG-Debug-ID: 1489461501-0c856e65d5188ace0001-fS2M51 Received: from smtp.electronicbox.net (smtp.electronicbox.net [96.127.255.82]) by barracuda.ebox.ca with ESMTP id bGH2qWeloTnGnJnS (version=TLSv1 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Mon, 13 Mar 2017 23:18:21 -0400 (EDT) X-Barracuda-Envelope-From: simon.marchi@polymtl.ca X-Barracuda-RBL-Trusted-Forwarder: 96.127.255.82 Received: from simark.lan (173-246-11-162.qc.cable.ebox.net [173.246.11.162]) by smtp.electronicbox.net (Postfix) with ESMTP id C71CE440E7C; Mon, 13 Mar 2017 23:18:21 -0400 (EDT) From: Simon Marchi X-Barracuda-Effective-Source-IP: 173-246-11-162.qc.cable.ebox.net[173.246.11.162] X-Barracuda-Apparent-Source-IP: 173.246.11.162 X-Barracuda-RBL-IP: 173.246.11.162 To: gdb-patches@sourceware.org Cc: Simon Marchi Subject: [PATCH 05/10] hppa-linux-nat: Use ptid from regcache instead of inferior_ptid Date: Mon, 13 Mar 2017 23:18:14 -0400 X-ASG-Orig-Subj: [PATCH 05/10] hppa-linux-nat: Use ptid from regcache instead of inferior_ptid Message-Id: <20170314031819.745-5-simon.marchi@polymtl.ca> In-Reply-To: <20170314031819.745-1-simon.marchi@polymtl.ca> References: <20170314031819.745-1-simon.marchi@polymtl.ca> X-Barracuda-Connect: smtp.electronicbox.net[96.127.255.82] X-Barracuda-Start-Time: 1489461501 X-Barracuda-Encrypted: DHE-RSA-AES256-SHA X-Barracuda-URL: https://96.127.255.19:443/cgi-mod/mark.cgi X-Barracuda-Scan-Msg-Size: 1836 X-Barracuda-BRTS-Status: 1 X-Barracuda-Spam-Score: 0.00 X-Barracuda-Spam-Status: No, SCORE=0.00 using global scores of TAG_LEVEL=1000.0 QUARANTINE_LEVEL=1000.0 KILL_LEVEL=8.0 tests= X-Barracuda-Spam-Report: Code version 3.2, rules version 3.2.3.37208 Rule breakdown below pts rule name description ---- ---------------------- -------------------------------------------------- X-IsSubscribed: yes 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 #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);