linux-mips
[Top] [All Lists]

Re: gdb/kgdb register mismatch

To: Daniel Jacobowitz <dan@debian.org>
Subject: Re: gdb/kgdb register mismatch
From: Pete Popov <ppopov@embeddedalley.com>
Date: Thu, 23 Feb 2006 13:58:31 -0800
Cc: "'linux-mips@linux-mips.org'" <linux-mips@linux-mips.org>
In-reply-to: <20060223213124.GA3638@nevyn.them.org>
Organization: Embedded Alley Solutions, Inc
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <1140723606.11388.321.camel@localhost.localdomain> <20060223213124.GA3638@nevyn.them.org>
Reply-to: ppopov@embeddedalley.com
Sender: linux-mips-bounce@linux-mips.org
On Thu, 2006-02-23 at 16:31 -0500, Daniel Jacobowitz wrote:
> On Thu, Feb 23, 2006 at 11:40:06AM -0800, Pete Popov wrote:
> > 
> > I'm having the following problems with gdb/kgdb:
> > 
> > 64bit CPU, running a 32 bit kernel. When I break at a certain point, I
> > can see that the kernel kgdb stub appears to be sending the correct
> > register information, where each reg value written in the kgdb packet is
> > 32bit. However, the cross gdb client seems to be interpreting, or
> > expecting, 64bit register values so it 'skips' over every other value.
> > For example:
> > 
> > reg values sent by kgdb:      reg values shown by gdb client:
> > reg 0:  0x00000000            reg0:  0x00000001
> > reg 1:  0x00000001            reg1:  0x00000002
> > reg 2:  0x00000002            reg2:  0x00000004
> > reg 3:  0x00000003
> > reg 4:  0x00000004
> > 
> > Should the kgdb stub be sending 64bit values for the registers, even
> > though it's a 32bit kernel?  If the stub is supposed to be sending 32bit
> > register values, any suggestion why cross gdb is not interpreting them
> > correctly?
> 
> This is a FAQ; it's a bug in GDB that will be fixed someday, but for
> now use "set architecture mips:isa32".

It works, thanks! I'm not sure how well documented this is but perhaps
it's just because I don't use kgdb often.

Pete


<Prev in Thread] Current Thread [Next in Thread>