[S390] kdump backend code

This patch provides the architecture specific part of the s390 kdump
support.

Signed-off-by: Michael Holzheu <holzheu@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
Michael Holzheu
2011-10-30 15:16:40 +01:00
committed by Martin Schwidefsky
parent 7f0bf656c6
commit 60a0c68df2
19 changed files with 1080 additions and 14 deletions

View File

@@ -16,6 +16,7 @@
#include <linux/ctype.h>
#include <linux/fs.h>
#include <linux/gfp.h>
#include <linux/crash_dump.h>
#include <asm/ipl.h>
#include <asm/smp.h>
#include <asm/setup.h>
@@ -1740,6 +1741,9 @@ void do_restart(void)
{
smp_restart_with_online_cpu();
smp_send_stop();
#ifdef CONFIG_CRASH_DUMP
crash_kexec(NULL);
#endif
on_restart_trigger.action->fn(&on_restart_trigger);
stop_run(&on_restart_trigger);
}
@@ -2010,7 +2014,7 @@ static void do_reset_calls(void)
u32 dump_prefix_page;
void s390_reset_system(void)
void s390_reset_system(void (*func)(void *), void *data)
{
struct _lowcore *lc;
@@ -2038,6 +2042,10 @@ void s390_reset_system(void)
S390_lowcore.program_new_psw.addr =
PSW_ADDR_AMODE | (unsigned long) s390_base_pgm_handler;
do_reset_calls();
}
/* Store status at absolute zero */
store_status();
do_reset_calls();
if (func)
func(data);
}