Skip to content

Commit

Permalink
[IA64] use CORE_DUMP_USE_REGSET
Browse files Browse the repository at this point in the history
After we have regset support, we can use CORE_DUMP_USE_REGSET.

Signed-off-by: Shaohua Li <shaohua.li@intel.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
  • Loading branch information
Shaohua Li authored and Tony Luck committed Mar 12, 2008
1 parent 7552921 commit 6cb53d7
Show file tree
Hide file tree
Showing 2 changed files with 1 addition and 36 deletions.
30 changes: 0 additions & 30 deletions arch/ia64/kernel/process.c
Original file line number Diff line number Diff line change
Expand Up @@ -625,42 +625,12 @@ do_dump_fpu (struct unw_frame_info *info, void *arg)
do_dump_task_fpu(current, info, arg);
}

int
dump_task_regs(struct task_struct *task, elf_gregset_t *regs)
{
struct unw_frame_info tcore_info;

if (current == task) {
unw_init_running(do_copy_regs, regs);
} else {
memset(&tcore_info, 0, sizeof(tcore_info));
unw_init_from_blocked_task(&tcore_info, task);
do_copy_task_regs(task, &tcore_info, regs);
}
return 1;
}

void
ia64_elf_core_copy_regs (struct pt_regs *pt, elf_gregset_t dst)
{
unw_init_running(do_copy_regs, dst);
}

int
dump_task_fpu (struct task_struct *task, elf_fpregset_t *dst)
{
struct unw_frame_info tcore_info;

if (current == task) {
unw_init_running(do_dump_fpu, dst);
} else {
memset(&tcore_info, 0, sizeof(tcore_info));
unw_init_from_blocked_task(&tcore_info, task);
do_dump_task_fpu(task, &tcore_info, dst);
}
return 1;
}

int
dump_fpu (struct pt_regs *pt, elf_fpregset_t dst)
{
Expand Down
7 changes: 1 addition & 6 deletions include/asm-ia64/elf.h
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
#define ELF_ARCH EM_IA_64

#define USE_ELF_CORE_DUMP
#define CORE_DUMP_USE_REGSET

/* Least-significant four bits of ELF header's e_flags are OS-specific. The bits are
interpreted as follows by Linux: */
Expand Down Expand Up @@ -207,12 +208,6 @@ extern void ia64_elf_core_copy_regs (struct pt_regs *src, elf_gregset_t dst);

struct task_struct;

extern int dump_task_regs(struct task_struct *, elf_gregset_t *);
extern int dump_task_fpu (struct task_struct *, elf_fpregset_t *);

#define ELF_CORE_COPY_TASK_REGS(tsk, elf_gregs) dump_task_regs(tsk, elf_gregs)
#define ELF_CORE_COPY_FPREGS(tsk, elf_fpregs) dump_task_fpu(tsk, elf_fpregs)

#define GATE_EHDR ((const struct elfhdr *) GATE_ADDR)

/* update AT_VECTOR_SIZE_ARCH if the number of NEW_AUX_ENT entries changes */
Expand Down

0 comments on commit 6cb53d7

Please sign in to comment.