This is the mail archive of the gdb@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Disabling breakpoints does not work if rejected from remote stub


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.



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]