aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnton Blanchard <anton@samba.org>2013-08-06 12:01:50 -0400
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2013-08-14 01:33:39 -0400
commit8bd0b119ae64bf448e5f45d208007950e0ac2754 (patch)
treec792cadc7f7fa17c5e36d119e486878906af47a4
parenta02f6dfc954ed2308a2809e37c2f262d52b82a2b (diff)
powerpc: Fix little endian coredumps
We need to set ELF_DATA correctly on LE coredumps. Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
-rw-r--r--arch/powerpc/include/uapi/asm/elf.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/arch/powerpc/include/uapi/asm/elf.h b/arch/powerpc/include/uapi/asm/elf.h
index 89fa042d51db..7e39c9146a71 100644
--- a/arch/powerpc/include/uapi/asm/elf.h
+++ b/arch/powerpc/include/uapi/asm/elf.h
@@ -109,7 +109,6 @@ typedef elf_gregset_t32 compat_elf_gregset_t;
109# define ELF_GREG_TYPE elf_greg_t64 109# define ELF_GREG_TYPE elf_greg_t64
110# define ELF_ARCH EM_PPC64 110# define ELF_ARCH EM_PPC64
111# define ELF_CLASS ELFCLASS64 111# define ELF_CLASS ELFCLASS64
112# define ELF_DATA ELFDATA2MSB
113typedef elf_greg_t64 elf_greg_t; 112typedef elf_greg_t64 elf_greg_t;
114typedef elf_gregset_t64 elf_gregset_t; 113typedef elf_gregset_t64 elf_gregset_t;
115#else 114#else
@@ -118,11 +117,16 @@ typedef elf_gregset_t64 elf_gregset_t;
118# define ELF_GREG_TYPE elf_greg_t32 117# define ELF_GREG_TYPE elf_greg_t32
119# define ELF_ARCH EM_PPC 118# define ELF_ARCH EM_PPC
120# define ELF_CLASS ELFCLASS32 119# define ELF_CLASS ELFCLASS32
121# define ELF_DATA ELFDATA2MSB
122typedef elf_greg_t32 elf_greg_t; 120typedef elf_greg_t32 elf_greg_t;
123typedef elf_gregset_t32 elf_gregset_t; 121typedef elf_gregset_t32 elf_gregset_t;
124#endif /* __powerpc64__ */ 122#endif /* __powerpc64__ */
125 123
124#ifdef __BIG_ENDIAN__
125#define ELF_DATA ELFDATA2MSB
126#else
127#define ELF_DATA ELFDATA2LSB
128#endif
129
126/* Floating point registers */ 130/* Floating point registers */
127typedef double elf_fpreg_t; 131typedef double elf_fpreg_t;
128typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG]; 132typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG];