From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 99535 invoked by alias); 1 Mar 2017 17:14:59 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 96886 invoked by uid 89); 1 Mar 2017 17:14:57 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-26.4 required=5.0 tests=BAYES_00,FREEMAIL_FROM,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_NONE,RCVD_IN_SORBS_SPAM,SPF_PASS autolearn=ham version=3.3.2 spammy=accidental, Apr, U*fche X-HELO: mail-wm0-f68.google.com Received: from mail-wm0-f68.google.com (HELO mail-wm0-f68.google.com) (74.125.82.68) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 01 Mar 2017 17:14:55 +0000 Received: by mail-wm0-f68.google.com with SMTP id v190so2428484wme.3 for ; Wed, 01 Mar 2017 09:14:55 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version:content-transfer-encoding; bh=I0/wRzIL2W4+lWl8XYIx638JB+HJ4ElKNqzLbGhBbCw=; b=PrCnXN62dRF0/EDt5fqKiZ7MOQz+Qa46e4Mmq4XCxUkrGo74V2VGLaWOjRwEPwZQQs Z7zkbl8RYPlLkPU2F9zTy6HRr9Q4K/yXfx0AEBLg+l6yVSeCxqY8DwmhEdiF4s23D090 ZDOKoOfg1uwbnFDYMgRX3Mplzc7oxoUjBOBEByAH6DXTCPQzryT9BipA2mrurm6Q/go/ 0ux2Xt6uFi7Y4VhIIjW2MovPDKdgEhQFoLaqojUgwwk2TXdZWwN2U7WZSI9ARuapVj1T 23SO2Z1hrTGsM9ImNzEIGcXsgDDmuvRdNGEmzH402lqxW9uHIdTISWjeY5I9UFfWCzKa GudQ== X-Gm-Message-State: AMke39kUUaaHcF41iw6clx2OQ3wI4WFQJ+f6qhUOhcCa7LcYsSYWteqxaL7Ukl4Fmouo5Q== X-Received: by 10.28.178.84 with SMTP id b81mr4181907wmf.83.1488388492397; Wed, 01 Mar 2017 09:14:52 -0800 (PST) Received: from E107787-LIN ([194.214.185.158]) by smtp.gmail.com with ESMTPSA id 11sm7406077wrb.10.2017.03.01.09.14.51 (version=TLS1_2 cipher=AES128-SHA bits=128/128); Wed, 01 Mar 2017 09:14:51 -0800 (PST) From: Yao Qi To: Alan Hayward Cc: "gdb-patches\@sourceware.org" , fche@redhat.com Subject: Re: [PATCH] Remove MAX_REGISTER_SIZE from sol-thread.c References: <9C2B8A71-1050-4B8B-A27A-C620E46AB9A2@arm.com> Date: Wed, 01 Mar 2017 17:14:00 -0000 In-Reply-To: <9C2B8A71-1050-4B8B-A27A-C620E46AB9A2@arm.com> (Alan Hayward's message of "Fri, 24 Feb 2017 10:12:39 +0000") Message-ID: <86d1e0rkam.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes X-SW-Source: 2017-03/txt/msg00009.txt.bz2 Alan Hayward writes: > Regcache calls in sol-thread.c are bogus and do nothing. > The code in between will not change or update regcache. > Removed. If we remove code, we need to figure out why the code was there. The code is about to remove was added by commit 7cdd6cac82faad2083029b2ac014d44d869f76c0 Author: Frank Ch. Eigler Date: Thu Apr 2 18:54:04 1998 +0000 * Fixes for PR 14571. =20=20=20=20 Thu Apr 2 12:47:41 1998 Frank Ch. Eigler =20=20=20=20 * sol-thread.c (sol_thread_store_registers): Save & restore new value of single updated register to prevent accidental clobbering. and there was a global buffer "registers". However, the global buffer no longer exists in current GDB, so the code is no longer needed, IMO. Hi, Frank, do you remember how does your patch (above) fix the problem you described in the ChangeLog? I don't see how p_td_thr_getgregs and p_td_thr_getfpregs clobber the global buffer 'registers'. > diff --git a/gdb/sol-thread.c b/gdb/sol-thread.c > index a09a3ab9a8bc56f367e3ba1537f5674f0a7f491f..06b146c314a10be0e360a7242= bab229ced1c00b1 100644 > --- a/gdb/sol-thread.c > +++ b/gdb/sol-thread.c > @@ -534,12 +534,6 @@ sol_thread_store_registers (struct target_ops *ops, > > if (regnum !=3D -1) > { > - /* Not writing all the registers. */ > - char old_value[MAX_REGISTER_SIZE]; > - > - /* Save new register value. */ > - regcache_raw_collect (regcache, regnum, old_value); > - > val =3D p_td_thr_getgregs (&thandle, gregset); > if (val !=3D TD_OK) > error (_("sol_thread_store_registers: td_thr_getgregs %s"), > @@ -548,9 +542,6 @@ sol_thread_store_registers (struct target_ops *ops, > if (val !=3D TD_OK) > error (_("sol_thread_store_registers: td_thr_getfpregs %s"), > td_err_string (val)); > - > - /* Restore new register value. */ > - regcache_raw_supply (regcache, regnum, old_value); --=20 Yao (=E9=BD=90=E5=B0=A7)