From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29298 invoked by alias); 11 Dec 2004 00:31:07 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 29087 invoked from network); 11 Dec 2004 00:30:39 -0000 Received: from unknown (HELO mx1.redhat.com) (66.187.233.31) by sourceware.org with SMTP; 11 Dec 2004 00:30:39 -0000 Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254]) by mx1.redhat.com (8.12.11/8.12.11) with ESMTP id iBB0UdhI016566 for ; Fri, 10 Dec 2004 19:30:39 -0500 Received: from pobox.toronto.redhat.com (pobox.toronto.redhat.com [172.16.14.4]) by int-mx1.corp.redhat.com (8.11.6/8.11.6) with ESMTP id iBB0Udr00325; Fri, 10 Dec 2004 19:30:39 -0500 Received: from touchme.toronto.redhat.com (IDENT:postfix@touchme.toronto.redhat.com [172.16.14.9]) by pobox.toronto.redhat.com (8.12.8/8.12.8) with ESMTP id iBB0UcoS016090; Fri, 10 Dec 2004 19:30:38 -0500 Received: from redhat.com (toocool.toronto.redhat.com [172.16.14.72]) by touchme.toronto.redhat.com (Postfix) with ESMTP id CB3778002A2; Fri, 10 Dec 2004 19:30:38 -0500 (EST) Message-ID: <41BA3FAE.1050409@redhat.com> Date: Sat, 11 Dec 2004 01:28:00 -0000 From: Jeff Johnston User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 MIME-Version: 1.0 To: Daniel Jacobowitz Cc: gdb-patches@sources.redhat.com Subject: Re: [RFA]: Modified Watchthreads Patch References: <41B8E16D.6070505@redhat.com> <20041210191015.GA18430@nevyn.them.org> <41BA00E1.20900@redhat.com> <20041210203729.GA7830@nevyn.them.org> <41BA168E.7030507@redhat.com> <41BA36C5.2030304@redhat.com> <20041210235703.GA25332@nevyn.them.org> In-Reply-To: <20041210235703.GA25332@nevyn.them.org> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2004-12/txt/msg00288.txt.bz2 Daniel Jacobowitz wrote: > On Fri, Dec 10, 2004 at 06:52:37PM -0500, Jeff Johnston wrote: > >>Interesting results. Applying my previous patch and just changing the >>FIXME code in dr_get_register and dr_set_register to use the standard: >> >>tid = TIDGET (inferior_ptid); >>if (tid == 0) >> tid = PIDGET (inferior_ptid); >> >>allows watchthreads.exp to work for both x86 and x86_64. For x86, I used >>an fc3 system with a 2.6.9-1.667smp kernel. I had to use an RHEL3 2.4 >>kernel for x86-64. > > > As Eli says, there are some design issues with the rest of the x86 > watchpoint code that make me nervous about doing this. > > >>The test sets two watchpoints that will be triggered once in the main >>thread and thereafter in two distinct threads. The test verifies that each >>value is incremented as it should in the correct thread. It makes sure >>there are no missing jumps. I have witnessed multiple watchpoint events >>and thread creation events requiring processing at the same time (i.e. >>deferred events required) and it handles these correctly. >> >>I tried an experiment and broke in the thread function in one of the >>threads. I then watched a variable that can only be triggered in a >>separate thread. That also worked which was cool. >> >>As I observed before, the actual watchpoint only needs to be set on one >>thread and it will trigger in other threads. I can send you the additional >>patch if you want to experiment with it. I am still waiting for a machine >>with the latest RH kernel on it. I'll let you know if that works the same. > > > I'm glad to hear that it works for you. However, since the kernel > sources that I have here patently say that it shouldn't, we need to > understand why. Do the RHEL kernels have local changes to watchpoint > support? arch/i386/kernel/ptrace.c and arch/i386/kernel/process.c > should have all the relevant bits. > There's no comments in the kernel patches (try not to laugh) and I don't know by looking at the patches whether any of them are affecting the watchpoint support. I will ask one of the kernel folks here if they know of any local patch that might do this. There are no changes to ptrace.c in the patches I have for fc3. -- Jeff J.