This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
Re: Disabling breakpoints does not work if rejected from remote stub
- From: Michael Snyder <Michael dot Snyder at palmsource dot com>
- To: Sascha <sascha at pasalacqua dot de>
- Cc: 'Daniel Jacobowitz' <drow at false dot org>, gdb at sourceware dot org
- Date: Mon, 05 Mar 2007 12:10:52 -0800
- Subject: Re: Disabling breakpoints does not work if rejected from remote stub
- References: <000001c75a51$cc99f0c0$02b2a8c0@insanenotebook> <20070227115524.GA5164@caradoc.them.org> <001501c75a91$8843c910$02b2a8c0@insanenotebook>
On Tue, 2007-02-27 at 18:05 +0100, Sascha wrote:
> Hi
>
> >Could you try two things for me?
>
> - I downloaded the latest snapshot from head (27/02) and the problem still
> exists
>
> - I logged the MI session with debug remote set to 1
>
> See attached file.
Looks like several problems, really:
252^running
(gdb)
&"Sending packet: $Z0,200094,4#45..."
Sending packet: $Z0,200094,4#45...Ack
Packet received: OK
&"Ack\n"
&"Packet received: OK\n"
&"Packet Z0 (software-breakpoint) is supported\n"
&"Sending packet: $Z0,20009c,4#74..."
Packet Z0 (software-breakpoint) is supported
Sending packet: $Z0,20009c,4#74...Ack
Packet received: OK
Sending packet: $Z0,200080,4#40...Ack
Packet received: E11
Warning:
Cannot insert breakpoint 3.
Error accessing memory address 0x200080: (undocumented errno -1).
Here, gdb reports the error as "error accessing memory", which
isn't really the error (a minor point, perhaps).
However, the more serious error is that at this point, the
"run" (or "step") command is aborted, returning to the gdb
prompt, but without removing the breakpoints. The error handling
code at this point ought to remove all of the breakpoints that
have been inserted.
This is why the handshake state between gdb and your target
is now broken. You can't insert a third breakpoint on the target,
because the first two have not been removed.