linux-mips
[Top] [All Lists]

Re: gdb gets confused with o32 core files, WANT_COMPAT_REG_H needed?

To: Dave Johnson <djohnson+linuxmips@sw.starentnetworks.com>
Subject: Re: gdb gets confused with o32 core files, WANT_COMPAT_REG_H needed?
From: Daniel Jacobowitz <dan@debian.org>
Date: Sun, 28 Aug 2005 11:45:31 -0400
Cc: Ralf Baechle <ralf@linux-mips.org>, linux-mips@linux-mips.org
In-reply-to: <17162.16068.212165.340275@cortez.sw.starentnetworks.com>
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <17162.16068.212165.340275@cortez.sw.starentnetworks.com>
Sender: linux-mips-bounce@linux-mips.org
User-agent: Mutt/1.5.8i
On Mon, Aug 22, 2005 at 05:08:20PM -0400, Dave Johnson wrote:
> 
> I've been trying to fix core file support for 64bit kernel with o32
> userspace (working against 2.6.12 cvs tag).
> 
> After applying the patch posted on 13 Feb 2005 from Daniel Jacobowitz
> to fix binfmt_elfo32.c (any reason this didn't make it into CVS?),
> I still ran into trouble with gdb not understanding the NT_PRSTATUS
> header in the core file.
> 
> While Dan's fix makes the kernel use elf32 definitions, gdb was still
> getting confused by pr_reg contained in the core file.
> 
> Dan's definition of ELF_CORE_COPY_REGS in binfmt_elfo32.c is copying
> the registers using EF_R0 as 0 not 6 producing results into offset 0
> through 37 not 6 through 43 as gdb expects for 32bit core files.
> 
> Below patch (applied after Dan's patch) writes the registers at offset
> 6 making gdb much happier.

FYI, this has all been rearranged since - it did this correctly at the
time.  I don't know why the patch was dropped.


-- 
Daniel Jacobowitz
CodeSourcery, LLC

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