diff options
author | Horms <horms@verge.net.au> | 2006-12-12 09:49:03 +0100 |
---|---|---|
committer | Tony Luck <tony.luck@intel.com> | 2006-12-12 19:11:00 +0100 |
commit | 45a98fc622ae700eed34eb2be00743910d50dbe1 (patch) | |
tree | e5e5279c25582a7d26c37af189330318fe0f42dd /arch/ia64/kernel/crash.c | |
parent | [IA64] Do not call SN_SAL_SET_CPU_NUMBER twice on cpu 0 (diff) | |
download | linux-45a98fc622ae700eed34eb2be00743910d50dbe1.tar.xz linux-45a98fc622ae700eed34eb2be00743910d50dbe1.zip |
[IA64] CONFIG_KEXEC/CONFIG_CRASH_DUMP permutations
Actually, on reflection I think that there is a good case for
keeping the options separate. I am thinking particularly of people
who want a very small crashdump kernel and thus don't want to compile
in kexec.
The patch below should fix things up so that all valid combinations of
KEXEC, CRASH_DUMP and VMCORE compile cleanly - VMCORE depends on
CRASH_DUMP which is why I said valid combinations. In a nutshell
it just untangles unrelated code and switches around a few defines.
Please note that it creats a new file, arch/ia64/kernel/crash_dump.c
This is in keeping with the i386 implementation.
Signed-off-by: Simon Horman <horms@verge.net.au>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Diffstat (limited to 'arch/ia64/kernel/crash.c')
-rw-r--r-- | arch/ia64/kernel/crash.c | 22 |
1 files changed, 0 insertions, 22 deletions
diff --git a/arch/ia64/kernel/crash.c b/arch/ia64/kernel/crash.c index 0aabedf95dad..bc2f64d72244 100644 --- a/arch/ia64/kernel/crash.c +++ b/arch/ia64/kernel/crash.c @@ -19,29 +19,11 @@ #include <asm/kdebug.h> #include <asm/mca.h> -#include <asm/uaccess.h> int kdump_status[NR_CPUS]; atomic_t kdump_cpu_freezed; atomic_t kdump_in_progress; int kdump_on_init = 1; -ssize_t -copy_oldmem_page(unsigned long pfn, char *buf, - size_t csize, unsigned long offset, int userbuf) -{ - void *vaddr; - - if (!csize) - return 0; - vaddr = __va(pfn<<PAGE_SHIFT); - if (userbuf) { - if (copy_to_user(buf, (vaddr + offset), csize)) { - return -EFAULT; - } - } else - memcpy(buf, (vaddr + offset), csize); - return csize; -} static inline Elf64_Word *append_elf_note(Elf64_Word *buf, char *name, unsigned type, void *data, @@ -225,14 +207,10 @@ static ctl_table sys_table[] = { static int machine_crash_setup(void) { - char *from = strstr(saved_command_line, "elfcorehdr="); static struct notifier_block kdump_init_notifier_nb = { .notifier_call = kdump_init_notifier, }; int ret; - if (from) - elfcorehdr_addr = memparse(from+11, &from); - saved_max_pfn = (unsigned long)-1; if((ret = register_die_notifier(&kdump_init_notifier_nb)) != 0) return ret; #ifdef CONFIG_SYSCTL |