[PATCH] kdump: Use real pt_regs from exception
authorAlexander Nyberg <alexn@telia.com>
Sat, 25 Jun 2005 21:58:26 +0000 (14:58 -0700)
committerLinus Torvalds <torvalds@ppc970.osdl.org>
Sat, 25 Jun 2005 23:24:54 +0000 (16:24 -0700)
commit6e274d144302068a00794ec22e73520c0615cb6f
treef7ea59ea47d3c5676fbac8d39e8deaa1f94146ae
parent86b1ae38c0a62409dc862a28e3f08920f55f944b
[PATCH] kdump: Use real pt_regs from exception

Makes kexec_crashdump() take a pt_regs * as an argument.  This allows to
get exact register state at the point of the crash.  If we come from direct
panic assertion NULL will be passed and the current registers saved before
crashdump.

This hooks into two places:
die(): check the conditions under which we will panic when calling
do_exit and go there directly with the pt_regs that caused the fatal
fault.

die_nmi(): If we receive an NMI lockup while in the kernel use the
pt_regs and go directly to crash_kexec(). We're probably nested up badly
at this point so this might be the only chance to escape with proper
information.

Signed-off-by: Alexander Nyberg <alexn@telia.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
arch/i386/kernel/crash.c
arch/i386/kernel/traps.c
arch/ppc/kernel/machine_kexec.c
arch/ppc64/kernel/machine_kexec.c
arch/s390/kernel/crash.c
arch/x86_64/kernel/crash.c
drivers/char/sysrq.c
include/linux/kexec.h
include/linux/reboot.h
kernel/kexec.c
kernel/panic.c