From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Kiper Subject: [PATCH v2 09/11] x86/xen/enlighten: Add init and crash kexec/kdump hooks Date: Tue, 20 Nov 2012 16:04:51 +0100 Message-ID: <1353423893-23125-10-git-send-email-daniel.kiper@oracle.com> References: <1353423893-23125-1-git-send-email-daniel.kiper@oracle.com> <1353423893-23125-2-git-send-email-daniel.kiper@oracle.com> <1353423893-23125-3-git-send-email-daniel.kiper@oracle.com> <1353423893-23125-4-git-send-email-daniel.kiper@oracle.com> <1353423893-23125-5-git-send-email-daniel.kiper@oracle.com> <1353423893-23125-6-git-send-email-daniel.kiper@oracle.com> <1353423893-23125-7-git-send-email-daniel.kiper@oracle.com> <1353423893-23125-8-git-send-email-daniel.kiper@oracle.com> <1353423893-23125-9-git-send-email-daniel.kiper@oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1353423893-23125-9-git-send-email-daniel.kiper@oracle.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: andrew.cooper3@citrix.com, ebiederm@xmission.com, hpa@zytor.com, jbeulich@suse.com, konrad.wilk@oracle.com, mingo@redhat.com, tglx@linutronix.de, x86@kernel.org, kexec@lists.infradead.org, linux-kernel@vger.kernel.org, virtualization@lists.linux-foundation.org, xen-devel@lists.xensource.com Cc: Daniel Kiper List-Id: xen-devel@lists.xenproject.org Add init and crash kexec/kdump hooks. Signed-off-by: Daniel Kiper --- arch/x86/xen/enlighten.c | 12 ++++++++++++ 1 files changed, 12 insertions(+), 0 deletions(-) diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c index 586d838..e5b4d0d 100644 --- a/arch/x86/xen/enlighten.c +++ b/arch/x86/xen/enlighten.c @@ -31,6 +31,7 @@ #include #include #include +#include #include #include @@ -67,6 +68,7 @@ #include #include #include +#include #ifdef CONFIG_ACPI #include @@ -1254,6 +1256,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); } @@ -1331,6 +1339,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 0 -- 1.5.6.5