aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/ia64/ia32/elfcore32.h1
-rw-r--r--arch/x86/ia32/ia32_binfmt.c1
-rw-r--r--fs/binfmt_elf.c8
-rw-r--r--fs/binfmt_elf_fdpic.c8
-rw-r--r--include/asm-x86/elf_32.h1
5 files changed, 11 insertions, 8 deletions
diff --git a/arch/ia64/ia32/elfcore32.h b/arch/ia64/ia32/elfcore32.h
index a47f63b204fb..446c9aac924d 100644
--- a/arch/ia64/ia32/elfcore32.h
+++ b/arch/ia64/ia32/elfcore32.h
@@ -117,6 +117,7 @@ elf_core_copy_task_fpregs(struct task_struct *tsk, struct pt_regs *regs, elf_fpr
117} 117}
118 118
119#define ELF_CORE_COPY_XFPREGS 1 119#define ELF_CORE_COPY_XFPREGS 1
120#define ELF_CORE_XFPREG_TYPE NT_PRXFPREG
120static inline int 121static inline int
121elf_core_copy_task_xfpregs(struct task_struct *tsk, elf_fpxregset_t *xfpu) 122elf_core_copy_task_xfpregs(struct task_struct *tsk, elf_fpxregset_t *xfpu)
122{ 123{
diff --git a/arch/x86/ia32/ia32_binfmt.c b/arch/x86/ia32/ia32_binfmt.c
index dffd2ac72747..d3c53e8b05c0 100644
--- a/arch/x86/ia32/ia32_binfmt.c
+++ b/arch/x86/ia32/ia32_binfmt.c
@@ -188,6 +188,7 @@ elf_core_copy_task_fpregs(struct task_struct *tsk, struct pt_regs *regs, elf_fpr
188} 188}
189 189
190#define ELF_CORE_COPY_XFPREGS 1 190#define ELF_CORE_COPY_XFPREGS 1
191#define ELF_CORE_XFPREG_TYPE NT_PRXFPREG
191static inline int 192static inline int
192elf_core_copy_task_xfpregs(struct task_struct *t, elf_fpxregset_t *xfpu) 193elf_core_copy_task_xfpregs(struct task_struct *t, elf_fpxregset_t *xfpu)
193{ 194{
diff --git a/fs/binfmt_elf.c b/fs/binfmt_elf.c
index f3037c645ca9..2f31c4c3fd48 100644
--- a/fs/binfmt_elf.c
+++ b/fs/binfmt_elf.c
@@ -1411,7 +1411,7 @@ struct elf_thread_status
1411 elf_fpregset_t fpu; /* NT_PRFPREG */ 1411 elf_fpregset_t fpu; /* NT_PRFPREG */
1412 struct task_struct *thread; 1412 struct task_struct *thread;
1413#ifdef ELF_CORE_COPY_XFPREGS 1413#ifdef ELF_CORE_COPY_XFPREGS
1414 elf_fpxregset_t xfpu; /* NT_PRXFPREG */ 1414 elf_fpxregset_t xfpu; /* ELF_CORE_XFPREG_TYPE */
1415#endif 1415#endif
1416 struct memelfnote notes[3]; 1416 struct memelfnote notes[3];
1417 int num_notes; 1417 int num_notes;
@@ -1446,8 +1446,8 @@ static int elf_dump_thread_status(long signr, struct elf_thread_status *t)
1446 1446
1447#ifdef ELF_CORE_COPY_XFPREGS 1447#ifdef ELF_CORE_COPY_XFPREGS
1448 if (elf_core_copy_task_xfpregs(p, &t->xfpu)) { 1448 if (elf_core_copy_task_xfpregs(p, &t->xfpu)) {
1449 fill_note(&t->notes[2], "LINUX", NT_PRXFPREG, sizeof(t->xfpu), 1449 fill_note(&t->notes[2], "LINUX", ELF_CORE_XFPREG_TYPE,
1450 &t->xfpu); 1450 sizeof(t->xfpu), &t->xfpu);
1451 t->num_notes++; 1451 t->num_notes++;
1452 sz += notesize(&t->notes[2]); 1452 sz += notesize(&t->notes[2]);
1453 } 1453 }
@@ -1621,7 +1621,7 @@ static int elf_core_dump(long signr, struct pt_regs *regs, struct file *file)
1621#ifdef ELF_CORE_COPY_XFPREGS 1621#ifdef ELF_CORE_COPY_XFPREGS
1622 if (elf_core_copy_task_xfpregs(current, xfpu)) 1622 if (elf_core_copy_task_xfpregs(current, xfpu))
1623 fill_note(notes + numnote++, 1623 fill_note(notes + numnote++,
1624 "LINUX", NT_PRXFPREG, sizeof(*xfpu), xfpu); 1624 "LINUX", ELF_CORE_XFPREG_TYPE, sizeof(*xfpu), xfpu);
1625#endif 1625#endif
1626 1626
1627 fs = get_fs(); 1627 fs = get_fs();
diff --git a/fs/binfmt_elf_fdpic.c b/fs/binfmt_elf_fdpic.c
index c5ca2f0aca7f..faae02189598 100644
--- a/fs/binfmt_elf_fdpic.c
+++ b/fs/binfmt_elf_fdpic.c
@@ -1417,7 +1417,7 @@ struct elf_thread_status
1417 elf_fpregset_t fpu; /* NT_PRFPREG */ 1417 elf_fpregset_t fpu; /* NT_PRFPREG */
1418 struct task_struct *thread; 1418 struct task_struct *thread;
1419#ifdef ELF_CORE_COPY_XFPREGS 1419#ifdef ELF_CORE_COPY_XFPREGS
1420 elf_fpxregset_t xfpu; /* NT_PRXFPREG */ 1420 elf_fpxregset_t xfpu; /* ELF_CORE_XFPREG_TYPE */
1421#endif 1421#endif
1422 struct memelfnote notes[3]; 1422 struct memelfnote notes[3];
1423 int num_notes; 1423 int num_notes;
@@ -1453,8 +1453,8 @@ static int elf_dump_thread_status(long signr, struct elf_thread_status *t)
1453 1453
1454#ifdef ELF_CORE_COPY_XFPREGS 1454#ifdef ELF_CORE_COPY_XFPREGS
1455 if (elf_core_copy_task_xfpregs(p, &t->xfpu)) { 1455 if (elf_core_copy_task_xfpregs(p, &t->xfpu)) {
1456 fill_note(&t->notes[2], "LINUX", NT_PRXFPREG, sizeof(t->xfpu), 1456 fill_note(&t->notes[2], "LINUX", ELF_CORE_XFPREG_TYPE,
1457 &t->xfpu); 1457 sizeof(t->xfpu), &t->xfpu);
1458 t->num_notes++; 1458 t->num_notes++;
1459 sz += notesize(&t->notes[2]); 1459 sz += notesize(&t->notes[2]);
1460 } 1460 }
@@ -1690,7 +1690,7 @@ static int elf_fdpic_core_dump(long signr, struct pt_regs *regs,
1690#ifdef ELF_CORE_COPY_XFPREGS 1690#ifdef ELF_CORE_COPY_XFPREGS
1691 if (elf_core_copy_task_xfpregs(current, xfpu)) 1691 if (elf_core_copy_task_xfpregs(current, xfpu))
1692 fill_note(notes + numnote++, 1692 fill_note(notes + numnote++,
1693 "LINUX", NT_PRXFPREG, sizeof(*xfpu), xfpu); 1693 "LINUX", ELF_CORE_XFPREG_TYPE, sizeof(*xfpu), xfpu);
1694#endif 1694#endif
1695 1695
1696 fs = get_fs(); 1696 fs = get_fs();
diff --git a/include/asm-x86/elf_32.h b/include/asm-x86/elf_32.h
index b32df3a332da..af45f315435b 100644
--- a/include/asm-x86/elf_32.h
+++ b/include/asm-x86/elf_32.h
@@ -129,6 +129,7 @@ extern int dump_task_extended_fpu (struct task_struct *, struct user_fxsr_struct
129#define ELF_CORE_COPY_TASK_REGS(tsk, elf_regs) dump_task_regs(tsk, elf_regs) 129#define ELF_CORE_COPY_TASK_REGS(tsk, elf_regs) dump_task_regs(tsk, elf_regs)
130#define ELF_CORE_COPY_FPREGS(tsk, elf_fpregs) dump_task_fpu(tsk, elf_fpregs) 130#define ELF_CORE_COPY_FPREGS(tsk, elf_fpregs) dump_task_fpu(tsk, elf_fpregs)
131#define ELF_CORE_COPY_XFPREGS(tsk, elf_xfpregs) dump_task_extended_fpu(tsk, elf_xfpregs) 131#define ELF_CORE_COPY_XFPREGS(tsk, elf_xfpregs) dump_task_extended_fpu(tsk, elf_xfpregs)
132#define ELF_CORE_XFPREG_TYPE NT_PRXFPREG
132 133
133#define VDSO_HIGH_BASE (__fix_to_virt(FIX_VDSO)) 134#define VDSO_HIGH_BASE (__fix_to_virt(FIX_VDSO))
134#define VDSO_CURRENT_BASE ((unsigned long)current->mm->context.vdso) 135#define VDSO_CURRENT_BASE ((unsigned long)current->mm->context.vdso)