From: Daniel Kiper Date: Thu, 21 Jun 2012 13:38:02 +0000 (+0200) Subject: x86/xen/enlighten: Add init and crash kexec/kdump hooks X-Git-Tag: v2.6.39-400.9.0~514^2~2 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=d8f99dd3139a5991c48fa4eb6eefed77a6c06b27;p=users%2Fjedix%2Flinux-maple.git x86/xen/enlighten: Add init and crash kexec/kdump hooks Add init and crash kexec/kdump hooks. Signed-off-by: Daniel Kiper --- diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c index f767b04090b2..4390dbd0b2c4 100644 --- a/arch/x86/xen/enlighten.c +++ b/arch/x86/xen/enlighten.c @@ -31,6 +31,7 @@ #include #include #include +#include #include #include @@ -66,6 +67,7 @@ #include #include #include +#include #ifdef CONFIG_ACPI #include @@ -1194,6 +1196,12 @@ static void xen_machine_power_off(void) static void xen_crash_shutdown(struct pt_regs *regs) { +#ifdef CONFIG_KEXEC + if (kexec_crash_image) { + crash_save_cpu(regs, safe_smp_processor_id()); + return; + } +#endif xen_reboot(SHUTDOWN_crash); } @@ -1272,6 +1280,10 @@ asmlinkage void __init xen_start_kernel(void) xen_init_mmu_ops(); +#ifdef CONFIG_KEXEC + xen_init_kexec_ops(); +#endif + /* Prevent unwanted bits from being set in PTEs. */ __supported_pte_mask &= ~_PAGE_GLOBAL; if (!xen_initial_domain())