[POWERPC] Add SPE registers to core dumps
authorRoland McGrath <roland@redhat.com>
Thu, 3 Jan 2008 01:05:48 +0000 (17:05 -0800)
committerPaul Mackerras <paulus@samba.org>
Thu, 7 Feb 2008 09:40:23 +0000 (20:40 +1100)
This makes the SPE register data appear in ELF core dumps, using the
new n_type value NT_PPC_SPE (0x101).  This new note type is not used
by any consumers of core files yet, but support can be added.  I don't
even have any hardware with SPE capabilities, so I've never seen such
a note.  But this demonstrates how simple it is to export register
information in core dumps when the user_regset style is used for the
low-level code.

Signed-off-by: Roland McGrath <roland@redhat.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
arch/powerpc/kernel/ptrace.c
include/linux/elf.h

index 7571c2e2d9910be62c57578f0e5e358a04312a4c..7673e98657330dd7f90dd4d29f569d4ea2ca10e8 100644 (file)
@@ -581,7 +581,7 @@ static const struct user_regset compat_regsets[] = {
 #endif
 #ifdef CONFIG_SPE
        [REGSET_SPE] = {
-               .n = 35,
+               .core_note_type = NT_PPC_SPE, .n = 35,
                .size = sizeof(u32), .align = sizeof(u32),
                .active = evr_active, .get = evr_get, .set = evr_set
        },
index 7ceb24d87c1a970b06835f5c645bb0ab2e31f1d0..30eb6fbd5323851523a0c2d8033424b86f93eedf 100644 (file)
@@ -355,6 +355,7 @@ typedef struct elf64_shdr {
 #define NT_AUXV                6
 #define NT_PRXFPREG     0x46e62b7f      /* copied from gdb5.1/include/elf/common.h */
 #define NT_PPC_VMX     0x100           /* PowerPC Altivec/VMX registers */
+#define NT_PPC_SPE     0x101           /* PowerPC SPE/EVR registers */
 #define NT_386_TLS     0x200           /* i386 TLS slots (struct user_desc) */