[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [linux-2.6.18-xen] [IA64] Kdump: pass control page to hypervisor



# HG changeset patch
# User Alex Williamson <alex.williamson@xxxxxx>
# Date 1190922458 21600
# Node ID 35f418758a773a5727bde40b87897a5497e81f5d
# Parent  95cf1f8dbd3b3f1535796d854055de22bee20769
[IA64] Kdump: pass control page to hypervisor

On ia64 the control page needs to be passed down to the hypervisor
on kexec.

Signed-off-by: Simon Horman <horms@xxxxxxxxxxxx>
---
 arch/ia64/kernel/machine_kexec.c |   10 ++++++++++
 include/xen/interface/kexec.h    |    3 +++
 2 files changed, 13 insertions(+)

diff -r 95cf1f8dbd3b -r 35f418758a77 arch/ia64/kernel/machine_kexec.c
--- a/arch/ia64/kernel/machine_kexec.c  Thu Sep 27 13:44:28 2007 -0600
+++ b/arch/ia64/kernel/machine_kexec.c  Thu Sep 27 13:47:38 2007 -0600
@@ -18,6 +18,10 @@
 #include <asm/setup.h>
 #include <asm/delay.h>
 #include <asm/meminit.h>
+#ifdef CONFIG_XEN
+#include <xen/interface/kexec.h>
+#include <asm/kexec.h>
+#endif
 
 typedef void (*relocate_new_kernel_t)(unsigned long, unsigned long,
                struct ia64_boot_param *, unsigned long);
@@ -132,4 +136,10 @@ void machine_kexec(struct kimage *image)
        unw_init_running(ia64_machine_kexec, image);
        for(;;);
 }
+#else /* CONFIG_XEN */
+void machine_kexec_setup_load_arg(xen_kexec_image_t *xki,struct kimage *image)
+{
+       xki->reboot_code_buffer =
+               kexec_page_to_pfn(image->control_code_page) << PAGE_SHIFT;
+}
 #endif /* CONFIG_XEN */
diff -r 95cf1f8dbd3b -r 35f418758a77 include/xen/interface/kexec.h
--- a/include/xen/interface/kexec.h     Thu Sep 27 13:44:28 2007 -0600
+++ b/include/xen/interface/kexec.h     Thu Sep 27 13:47:38 2007 -0600
@@ -78,6 +78,9 @@ typedef struct xen_kexec_image {
 typedef struct xen_kexec_image {
 #if defined(__i386__) || defined(__x86_64__)
     unsigned long page_list[KEXEC_XEN_NO_PAGES];
+#endif
+#if defined(__ia64__)
+    unsigned long reboot_code_buffer;
 #endif
     unsigned long indirection_page;
     unsigned long start_address;

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.