This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: [RFC] Possible bug with i386 watchpoints on several targets.
- From: Pierre Muller <muller at cerbere dot u-strasbg dot fr>
- To: Eli Zaretskii <eliz at is dot elta dot co dot il>
- Cc: gdb-patches at sources dot redhat dot com
- Date: Wed, 05 Dec 2001 10:31:50 +0100
- Subject: Re: [RFC] Possible bug with i386 watchpoints on several targets.
- References: <1858-Fri30Nov2001214802+0200-eliz@is.elta.co.il>
At 08:49 05/12/2001 , Eli Zaretskii a écrit:
>On Fri, 30 Nov 2001, I wrote:
>
> > The reason that hardware watchpoints are only considered to fire when
> > the watched value changes is that hardware watchpoints are treated teh
> > same as software watchpoints, and software watchpoints obviously
> > cannot fire unless the watched value changes.
> >
> > I think it is fundamentally wrong to treat hardware and software
> > watchpoints in a similar way. I think hardware watchpoints should be
> > treated like read and access watchpoints, not like software
> > watchpoints. If others (mainly Michael Snyder) agree, I will submit a
> > patch that will make that change, and will also solve this particular
> > problem raised by Pierre.
>
>Michael, did you read this part of my message? If so, do you agree with
>the principle? If you do, I'd like to write a patch that will fix this.
Eli, you didn't answer if you agree that
the call to i386_cleanup_dregs is required for all targets using
standard i386 hardware watchpoints.
I still think that the linux problem is related to that.
Your bug exists also there but its hidden by the fact
that loading shared libs at startup does set a correct value to
the value of the watched expression at the start of a program.
Which means that adding i386_cleanup_dregs call is not enough
to solve the complete problem, and that your fix is also needed.
Pierre Muller
Institut Charles Sadron
6,rue Boussingault
F 67083 STRASBOURG CEDEX (France)
mailto:muller@ics.u-strasbg.fr
Phone : (33)-3-88-41-40-07 Fax : (33)-3-88-41-40-99