This is the mail archive of the
mailing list for the GDB project.
Re: [RFA/commit] arm-tdep.c: Do not single-step after hitting a watchpoint
- From: Will Deacon <will dot deacon at arm dot com>
- To: Peter Maydell <peter dot maydell at linaro dot org>
- Cc: Joel Brobecker <brobecker at adacore dot com>, Marcus Shawcroft <marcus dot shawcroft at gmail dot com>, Terry Guo <Terry dot Guo at arm dot com>, Marcus Shawcroft <Marcus dot Shawcroft at arm dot com>, "lgustavo at codesourcery dot com" <lgustavo at codesourcery dot com>, "yao at codesourcery dot com" <yao at codesourcery dot com>, "gdb-patches at sourceware dot org" <gdb-patches at sourceware dot org>, "gareth at blacksphere dot co dot nz >> Gareth, McMullin" <gareth at blacksphere dot co dot nz>
- Date: Tue, 30 Sep 2014 10:04:14 +0100
- Subject: Re: [RFA/commit] arm-tdep.c: Do not single-step after hitting a watchpoint
- Authentication-results: sourceware.org; auth=none
- References: <CAFEAcA_0C+UqGwM39A4EQCQLg59fNbJ2du8rhrt++Q-pdE9rgQ at mail dot gmail dot com> <20140930085746 dot GC8075 at arm dot com>
On Tue, Sep 30, 2014 at 09:57:46AM +0100, Will Deacon wrote:
> On Mon, Sep 29, 2014 at 07:23:05PM +0100, Peter Maydell wrote:
> > Joel Brobecker wrote:
> > > I have been trying to understand the various contributions, and
> > > I admit I am still not quite sure...
> > >
> > > Does it look like the patch I proposed is correct? It seems to be
> > > supported by Terry Guo's experiments as well...
> > Note that the ARMv7 architecture allows watchpoints to
> > be implemented as *asynchronous*, in which case what
> > you will see is that you take a watchpoint exception
> > but it may not fire until after the instruction that
> > triggers the watchpoint and possibly several following
> > instructions have all finished execution. This may be
> > what you are seeing in your hardware tests.
> No you won't; the kernel will swallow the async watchpoint and complain in
> dmesg. I'm not aware of any CPU implementations that actually generate
D'oh, the lack of morning coffee means I missed the fall-through that Pedro
pointed out. I should go find the author of that code...