summaryrefslogtreecommitdiffstats
path: root/arch/mips/include/asm/reg.h
diff options
context:
space:
mode:
authorYong Zhang <yong.zhang@windriver.com>2009-07-01 03:35:39 +0200
committerRalf Baechle <ralf@linux-mips.org>2009-07-03 16:45:27 +0200
commitcad9bc69048b073023366ebb0878c1dd64a2c4d9 (patch)
tree1f524589c15cf75da217ed7b9b9b4686c3f714e9 /arch/mips/include/asm/reg.h
parentMIPS: BC47xx: Fix SSB irq setup (diff)
downloadlinux-cad9bc69048b073023366ebb0878c1dd64a2c4d9.tar.xz
linux-cad9bc69048b073023366ebb0878c1dd64a2c4d9.zip
MIPS: 64-bit: Fix o32 core dump
If an o32 process generates a core dump on a 64 bit kernel, the core file will not be correctly recognized. This is because ELF_CORE_COPY_REGS and ELF_CORE_COPY_TASK_REGS are not correctly defined for o32 and will use the default register set which would be CONFIG_64BIT in asm/elf.h. So we'll switch to use the right register defines in this situation by checking for WANT_COMPAT_REG_H and use the right defines of ELF_CORE_COPY_REGS and ELF_CORE_COPY_TASK_REGS. [Ralf: made ELF_CORE_COPY_TASK_REGS() bullet-proof against funny arguments.] Signed-off-by: Yong Zhang <yong.zhang@windriver.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/include/asm/reg.h')
-rw-r--r--arch/mips/include/asm/reg.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/mips/include/asm/reg.h b/arch/mips/include/asm/reg.h
index 634b55d7e7f6..910e71a12466 100644
--- a/arch/mips/include/asm/reg.h
+++ b/arch/mips/include/asm/reg.h
@@ -69,7 +69,7 @@
#endif
-#ifdef CONFIG_64BIT
+#if defined(CONFIG_64BIT) && !defined(WANT_COMPAT_REG_H)
#define EF_R0 0
#define EF_R1 1