From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 13938 invoked by alias); 31 Jul 2007 12:03:37 -0000 Received: (qmail 13929 invoked by uid 22791); 31 Jul 2007 12:03:36 -0000 X-Spam-Status: No, hits=-2.1 required=5.0 tests=AWL,BAYES_00,DK_POLICY_SIGNSOME,FORGED_RCVD_HELO X-Spam-Check-By: sourceware.org Received: from wildebeest.demon.nl (HELO gnu.wildebeest.org) (83.160.170.119) by sourceware.org (qpsmtpd/0.31) with ESMTP; Tue, 31 Jul 2007 12:03:33 +0000 Received: from dijkstra.wildebeest.org ([192.168.1.29]) by gnu.wildebeest.org with esmtp (Exim 4.43) id 1IFqUM-0003xe-KI; Tue, 31 Jul 2007 14:06:11 +0200 Subject: Re: Make CoredumpAction use Task.getRegisterBanks() From: Mark Wielaard To: Phil Muldoon Cc: frysk@sourceware.org In-Reply-To: <46AE238B.5020204@redhat.com> References: <1185814384.3674.36.camel@dijkstra.wildebeest.org> <46AE238B.5020204@redhat.com> Content-Type: text/plain Date: Tue, 31 Jul 2007 12:03:00 -0000 Message-Id: <1185883408.3653.106.camel@dijkstra.wildebeest.org> Mime-Version: 1.0 X-Mailer: Evolution 2.8.3 (2.8.3-2.fc6) Content-Transfer-Encoding: 7bit X-Spam-Score: -4.4 (----) X-IsSubscribed: yes Mailing-List: contact frysk-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: frysk-owner@sourceware.org X-SW-Source: 2007-q3/txt/msg00240.txt.bz2 Hi Phil, On Mon, 2007-07-30 at 12:44 -0500, Phil Muldoon wrote: > Mark Wielaard wrote: > > Phil and me were discussing cleaning up some of the > > Memory/RegisterBuffers between ptrace and core proc Tasks on irc and > > noticed that CoredumpAction was accessing the RegisterBanks directly > > through the Isa. To make splitting the issue of getting the > > RegisterBanks (Task specific) and doing the Register name mapping to > > bank number and offset (Isa specific) easier we wanted to make all code > > go through Task.getRegisterBanks(). This patch does that for > > CoredumpAction: > > > Looks good. The only function here is to attain the raw memory behind > the byte buffers for floating point registers, as that is dumped whole > into the FP Register Note. > > CoredumpAction has been gutted locally and being refactored into a > Corefile{arch}factory. I'll take your patch and reconstitute it there Thanks. Please let me know if I should hold off on the rest of the register banks cleanup till you finished this. Or if you want me to take a look at what you have now to get a better understanding how to clean up these buffers. For ptrace/proc based Tasks there are basically 4 register banks (not all of them used on all architectures) the Isa provides a mapping from the actual register names to the bank and offset inside it. The four banks are the regular registers (gotten through PTRACE_GETREGS), the general floating point registers (gotten through PTRACE_GETFPREGS), the extended floating point registers such like sse xmm registers (gotten through PTRACE_getXFPREGS) and the other registers (gotten through the start of USR memory space) that cover things like debug control registers found by the Isa through the mapping in sys/user.h (some of the other register banks are actually also contained in this one). Does this map somewhat to how core files handle the register banks, so you can just dump/read these banks from them? Cheers, Mark