From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 24376 invoked by alias); 8 Mar 2010 02:35:14 -0000 Received: (qmail 24367 invoked by uid 22791); 8 Mar 2010 02:35:13 -0000 X-SWARE-Spam-Status: No, hits=-1.7 required=5.0 tests=AWL,BAYES_00,SARE_MSGID_LONG40 X-Spam-Check-By: sourceware.org Received: from mail-pw0-f41.google.com (HELO mail-pw0-f41.google.com) (209.85.160.41) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 08 Mar 2010 02:35:09 +0000 Received: by pwj9 with SMTP id 9so3762481pwj.0 for ; Sun, 07 Mar 2010 18:35:08 -0800 (PST) MIME-Version: 1.0 Received: by 10.142.248.26 with SMTP id v26mr2774073wfh.335.1268015708124; Sun, 07 Mar 2010 18:35:08 -0800 (PST) In-Reply-To: <20100228183805.GA23351@host0.dyn.jankratochvil.net> References: <20100228183805.GA23351@host0.dyn.jankratochvil.net> From: Hui Zhu Date: Mon, 08 Mar 2010 02:35:00 -0000 Message-ID: Subject: Re: [RFA] patch for [Bug gdb/11253] To: gdb-patches ml Cc: Jan Kratochvil Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes 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 X-SW-Source: 2010-03/txt/msg00291.txt.bz2 Could some people help us review this patch? Thanks, Hui On Mon, Mar 1, 2010 at 02:38, Jan Kratochvil wr= ote: > On Fri, 26 Feb 2010 04:25:58 +0100, Hui Zhu wrote: >> This patch is for bug 11253 http://sourceware.org/bugzilla/show_bug.cgi?= id=3D11253 > > just extended it a bit but it remains the same. > > No regressions on {x86_64,x86_64-m32,i686}-fedora12-linux-gnu. > > since > =A0 =A0 =A0 =A0Re: [RFA] Fix hw watchpoints in process record. > =A0 =A0 =A0 =A0From: Pedro Alves > =A0 =A0 =A0 =A0http://sourceware.org/ml/gdb-patches/2009-11/msg00476.html > =A0 =A0 =A0 =A0http://sourceware.org/ml/gdb-cvs/2009-11/msg00187.html > =A0 =A0 =A0 =A0commit 1ab0b876af2e2410fa462e901623669f29d75c89 > > there are IMO missing the resets in record_open. > > > Thanks, > Jan > > > 2010-02-28 =A0Jan Kratochvil =A0 > =A0 =A0 =A0 =A0 =A0 =A0Hui Zhu =A0 > > =A0 =A0 =A0 =A0* record.c (record_open_1): Check tmp_to_stopped_by_watchp= oint and > =A0 =A0 =A0 =A0tmp_to_stopped_data_address. > =A0 =A0 =A0 =A0(record_open): Reset tmp_to_stopped_by_watchpoint and > =A0 =A0 =A0 =A0tmp_to_stopped_data_address. > =A0 =A0 =A0 =A0* target.c (init_dummy_target): Add to_stopped_by_watchpoi= nt and > =A0 =A0 =A0 =A0to_stopped_data_address. > > --- a/gdb/record.c > +++ b/gdb/record.c > @@ -867,6 +867,10 @@ record_open_1 (char *name, int from_tty) > =A0 =A0 error (_("Could not find 'to_insert_breakpoint' method on the tar= get stack.")); > =A0 if (!tmp_to_remove_breakpoint) > =A0 =A0 error (_("Could not find 'to_remove_breakpoint' method on the tar= get stack.")); > + =A0if (!tmp_to_stopped_by_watchpoint) > + =A0 =A0error (_("Could not find 'to_stopped_by_watchpoint' method on th= e target stack.")); > + =A0if (!tmp_to_stopped_data_address) > + =A0 =A0error (_("Could not find 'to_stopped_data_address' method on the= target stack.")); > > =A0 push_target (&record_ops); > =A0} > @@ -897,6 +901,8 @@ record_open (char *name, int from_tty) > =A0 tmp_to_xfer_partial =3D NULL; > =A0 tmp_to_insert_breakpoint =3D NULL; > =A0 tmp_to_remove_breakpoint =3D NULL; > + =A0tmp_to_stopped_by_watchpoint =3D NULL; > + =A0tmp_to_stopped_data_address =3D NULL; > > =A0 /* Set the beneath function pointers. =A0*/ > =A0 for (t =3D current_target.beneath; t !=3D NULL; t =3D t->beneath) > --- a/gdb/target.c > +++ b/gdb/target.c > @@ -2838,6 +2838,9 @@ init_dummy_target (void) > =A0 dummy_target.to_has_stack =3D (int (*) (struct target_ops *)) return_= zero; > =A0 dummy_target.to_has_registers =3D (int (*) (struct target_ops *)) ret= urn_zero; > =A0 dummy_target.to_has_execution =3D (int (*) (struct target_ops *)) ret= urn_zero; > + =A0dummy_target.to_stopped_by_watchpoint =3D return_zero; > + =A0dummy_target.to_stopped_data_address =3D > + =A0 =A0(int (*) (struct target_ops *, CORE_ADDR *)) return_zero; > =A0 dummy_target.to_magic =3D OPS_MAGIC; > =A0} > >