From: Ian Lance Taylor <ian@wasabisystems.com>
To: "Stephen A. Witt" <sawitt@electra.rsc.raytheon.com>
Cc: gdb@sources.redhat.com
Subject: Re: Remote Debugging on IXDP425
Date: Tue, 02 Dec 2003 04:20:00 -0000 [thread overview]
Message-ID: <m3smk3q29q.fsf@gossamer.airs.com> (raw)
In-Reply-To: <Pine.LNX.4.56.0312011657430.13718@zeus.rsc.raytheon.com>
"Stephen A. Witt" <sawitt@electra.rsc.raytheon.com> writes:
> I'm trying to get remote debugging using gdbserver on an IXDP425 target
> board. I've built a cross gdb-6.0 that executes on an i386 with the target
> set to arm-unknown-linux-gnu. The 'arm-unknown-linux-gnu-gdb' on my
> development machine does connect and talk to the gdbserver running on the
> target. I can start the program from gdb but breakpoints that I set don't
> break the program. I turned on remote debugging (set debug remote 1) and
> get the following:
>
> (gdb) b main
> Sending packet: $m87a0,1#ca...Ack
> Packet received: e5
> Sending packet: $m87a0,1#ca...Ack
> Packet received: e5
> Breakpoint 1 at 0x87a0
> (gdb) c
> Continuing.
> Sending packet: $Z0,8ec0,1#43...Ack
> Packet received:
> Packet Z0 (software-breakpoint) is NOT supported
> Sending packet: $m8ec0,1#fa...Ack
> Packet received: 00
> Sending packet: $X8ec0,0:#1e...Ack
> Packet received:
> binary downloading NOT suppported by target
> Sending packet: $M8ec0,1:cc#da...Ack
> Packet received: OK
> Sending packet: $m87a0,1#ca...Ack
> Packet received: e5
> Sending packet: $M87a0,1:cc#aa...Ack
> Packet received: OK
> Sending packet: $Hc0#db...Ack
> Packet received: OK
> Sending packet: $c#63...Ack
>
>
> So the software-breakpoint NOT supported would seem to be my problem. Any
> information about how I fix this?
That isn't the problem by itself. If the remote target doesn't
support `Z0', then gdb will try to set a breakpoint by writing
directly to memory. That's what you see it doing with the `m' request
(read memory) followed by the 'X' request (binary download, which is
also not supported), followed by the 'M' request (write memory). The
sequence above winds up writing the byte 0xcc to address 0x8ec0.
Similarly, it writes the byte 0xcc to the address 0x87a0.
So this is all fine. At least, it would be fine if a one-byte 0xcc
were an ARM breakpoint instruction. Unfortunately, 0xcc is an i386
breakpoint instruction. So I would say that you are running a gdb
configured for an i386 target and connecting to a gdbserver running on
an ARM. Don't do that.
Ian
next prev parent reply other threads:[~2003-12-02 4:20 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-12-02 1:15 Stephen A. Witt
2003-12-02 4:20 ` Ian Lance Taylor [this message]
2003-12-03 19:17 ` Stephen A. Witt
2003-12-03 21:29 ` Daniel Jacobowitz
2003-12-03 21:50 ` Stephen A. Witt
2003-12-03 22:24 ` Peter Reilley
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=m3smk3q29q.fsf@gossamer.airs.com \
--to=ian@wasabisystems.com \
--cc=gdb@sources.redhat.com \
--cc=sawitt@electra.rsc.raytheon.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox