From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 10025 invoked by alias); 11 Dec 2004 17:30:56 -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 9966 invoked from network); 11 Dec 2004 17:30:50 -0000 Received: from unknown (HELO balder.inter.net.il) (192.114.186.15) by sourceware.org with SMTP; 11 Dec 2004 17:30:50 -0000 Received: from zaretski (pns03-203-109.inter.net.il [80.230.203.109]) by balder.inter.net.il (Mirapoint Messaging Server MOS 3.3.7-GR) with ESMTP id DXB85674 (AUTH halo1); Sat, 11 Dec 2004 19:27:32 +0200 (IST) Date: Sat, 11 Dec 2004 17:33:00 -0000 From: "Eli Zaretskii" To: Daniel Jacobowitz Message-ID: <01c4dfa6$Blat.v2.2.2$d4763ba0@zahav.net.il> Content-Transfer-Encoding: 7BIT Content-Type: text/plain; charset=ISO-8859-1 CC: kettenis@gnu.org, jjohnstn@redhat.com, gdb-patches@sources.redhat.com In-reply-to: <20041211163652.GB13865@nevyn.them.org> (message from Daniel Jacobowitz on Sat, 11 Dec 2004 11:36:52 -0500) Subject: Re: [RFA]: Modified Watchthreads Patch Reply-to: Eli Zaretskii References: <41B8E16D.6070505@redhat.com> <20041210191015.GA18430@nevyn.them.org> <01c4df0c$Blat.v2.2.2$244dda20@zahav.net.il> <20041210230603.GA23419@nevyn.them.org> <01c4df10$Blat.v2.2.2$6f63d1a0@zahav.net.il> <20041210233700.GA24439@nevyn.them.org> <01c4df73$Blat.v2.2.2$5e13b740@zahav.net.il> <200412111433.iBBEXqpN007235@elgar.sibelius.xs4all.nl> <20041211163652.GB13865@nevyn.them.org> X-SW-Source: 2004-12/txt/msg00305.txt.bz2 > Date: Sat, 11 Dec 2004 11:36:52 -0500 > From: Daniel Jacobowitz > Cc: eliz@gnu.org, jjohnstn@redhat.com, gdb-patches@sources.redhat.com > > The kernel implementation of hardware watchpoints is very > platform-dependent because the hardware implementation of hardware > watchpoints is very platform-dependent. ??? Are we still talking about x86? If so, there are only 2 possible mechanisms I know about: (1) debug registers and (2) page-level protection. Are there any others? Am I missing something? Of these two, i386-nat.c currently only supports the first one. If we restrict ourselves for a moment to that single mechanism only, what platform dependencies are we talking about, as far as the _hardware_ implementation of hardware-assisted watchpoints is concerned? Am I missing something? > I would expect that they would always be > per-thread on any Linux target with true hardware watchpoints. Of > course, they'll be process global if they're implemented by page > protections The implementation that uses debug registers can be either global or local, depending on some bit in one of the registers. One thing GDB should know about a platform is how that platform fiddles with that bit.