[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [linux-2.6.18-xen] [IA64] kexec/kdump: call xen_machine_kexec_setup_resources after init_bootmem
# HG changeset patch # User Alex Williamson <alex.williamson@xxxxxx> # Date 1190997246 21600 # Node ID f3796d4aa5f58ac9f5a67d0ea9dc761e376e2270 # Parent 4edc8d689989510d6eaa1bdcdcf742e6e43baad0 [IA64] kexec/kdump: call xen_machine_kexec_setup_resources after init_bootmem Early on in find_memory(), reserve_memory() is called, which in turn calls xen_machine_kexec_setup_resources() and in turn alloc_bootmem_low(). However, before alloc_bootmem_low() can be called, init_bootmem() needs to be called. To resolve this problem, the call to xen_machine_kexec_setup_resources() is moved to just after the call to init_bootmem() in alloc_bootmem_low(). Signed-off-by: Simon Horman <horms@xxxxxxxxxxxx> --- arch/ia64/kernel/setup.c | 5 +---- arch/ia64/mm/contig.c | 6 ++++++ 2 files changed, 7 insertions(+), 4 deletions(-) diff -r 4edc8d689989 -r f3796d4aa5f5 arch/ia64/kernel/setup.c --- a/arch/ia64/kernel/setup.c Fri Sep 28 10:32:36 2007 -0600 +++ b/arch/ia64/kernel/setup.c Fri Sep 28 10:34:06 2007 -0600 @@ -308,12 +308,9 @@ reserve_memory (void) char *from = strstr(saved_command_line, "crashkernel="); unsigned long base, size; #ifdef CONFIG_XEN - if (is_initial_xendomain()) { - if (from) + if (is_initial_xendomain() && from) printk("Ignoring crashkernel command line, " "parameter will be supplied by xen\n"); - xen_machine_kexec_setup_resources(); - } else { #endif if (from) { diff -r 4edc8d689989 -r f3796d4aa5f5 arch/ia64/mm/contig.c --- a/arch/ia64/mm/contig.c Fri Sep 28 10:32:36 2007 -0600 +++ b/arch/ia64/mm/contig.c Fri Sep 28 10:34:06 2007 -0600 @@ -18,6 +18,9 @@ #include <linux/efi.h> #include <linux/mm.h> #include <linux/swap.h> +#ifdef CONFIG_XEN +#include <linux/kexec.h> +#endif #include <asm/meminit.h> #include <asm/pgalloc.h> @@ -172,6 +175,9 @@ find_memory (void) /* Free all available memory, then mark bootmem-map as being in use. */ efi_memmap_walk(filter_rsvd_memory, free_bootmem); reserve_bootmem(bootmap_start, bootmap_size); +#ifdef CONFIG_XEN + xen_machine_kexec_setup_resources(); +#endif find_initrd(); _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |