[PATCH 11/16] x86: move back crashkernel back to setup.c

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Yinghai Lu
Date: Wednesday, June 25, 2008 - 5:57 pm

Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>

---
 arch/x86/kernel/setup.c        |   58 +++++++++++++++++++++++++++++++++++++++++
 arch/x86/kernel/setup_percpu.c |   57 ----------------------------------------
 2 files changed, 58 insertions(+), 57 deletions(-)

Index: linux-2.6/arch/x86/kernel/setup.c
===================================================================
--- linux-2.6.orig/arch/x86/kernel/setup.c
+++ linux-2.6/arch/x86/kernel/setup.c
@@ -397,6 +397,64 @@ void __init parse_setup_data(void)
 }
 
 /*
+ * --------- Crashkernel reservation ------------------------------
+ */
+
+#ifdef CONFIG_KEXEC
+static inline unsigned long long get_total_mem(void)
+{
+	unsigned long long total;
+
+	total = max_low_pfn - min_low_pfn;
+#ifdef CONFIG_HIGHMEM
+	total += highend_pfn - highstart_pfn;
+#endif
+
+	return total << PAGE_SHIFT;
+}
+
+void __init reserve_crashkernel(void)
+{
+	unsigned long long total_mem;
+	unsigned long long crash_size, crash_base;
+	int ret;
+
+	total_mem = get_total_mem();
+
+	ret = parse_crashkernel(boot_command_line, total_mem,
+			&crash_size, &crash_base);
+	if (ret == 0 && crash_size > 0) {
+		if (crash_base <= 0) {
+			printk(KERN_INFO "crashkernel reservation failed - "
+					"you have to specify a base address\n");
+			return;
+		}
+
+		if (reserve_bootmem_generic(crash_base, crash_size,
+					BOOTMEM_EXCLUSIVE) < 0) {
+			printk(KERN_INFO "crashkernel reservation failed - "
+					"memory is in use\n");
+			return;
+		}
+
+		printk(KERN_INFO "Reserving %ldMB of memory at %ldMB "
+				"for crashkernel (System RAM: %ldMB)\n",
+				(unsigned long)(crash_size >> 20),
+				(unsigned long)(crash_base >> 20),
+				(unsigned long)(total_mem >> 20));
+
+		crashk_res.start = crash_base;
+		crashk_res.end   = crash_base + crash_size - 1;
+		insert_resource(&iomem_resource, &crashk_res);
+	}
+}
+#else
+void __init reserve_crashkernel(void)
+{
+}
+#endif
+
+/*
  * Determine if we were loaded by an EFI loader.  If so, then we have also been
  * passed the efi memmap, systab, etc., so we should use these data structures
  * for initialization.  Note, the efi init code path is determined by the
Index: linux-2.6/arch/x86/kernel/setup_percpu.c
===================================================================
--- linux-2.6.orig/arch/x86/kernel/setup_percpu.c
+++ linux-2.6/arch/x86/kernel/setup_percpu.c
@@ -387,63 +387,6 @@ EXPORT_SYMBOL(node_to_cpumask);
 
 #endif /* X86_64_NUMA */
 
-/*
- * --------- Crashkernel reservation ------------------------------
- */
-
-static inline unsigned long long get_total_mem(void)
-{
-	unsigned long long total;
-
-	total = max_low_pfn - min_low_pfn;
-#ifdef CONFIG_HIGHMEM
-	total += highend_pfn - highstart_pfn;
-#endif
-
-	return total << PAGE_SHIFT;
-}
-
-#ifdef CONFIG_KEXEC
-void __init reserve_crashkernel(void)
-{
-	unsigned long long total_mem;
-	unsigned long long crash_size, crash_base;
-	int ret;
-
-	total_mem = get_total_mem();
-
-	ret = parse_crashkernel(boot_command_line, total_mem,
-			&crash_size, &crash_base);
-	if (ret == 0 && crash_size > 0) {
-		if (crash_base <= 0) {
-			printk(KERN_INFO "crashkernel reservation failed - "
-					"you have to specify a base address\n");
-			return;
-		}
-
-		if (reserve_bootmem_generic(crash_base, crash_size,
-					BOOTMEM_EXCLUSIVE) < 0) {
-			printk(KERN_INFO "crashkernel reservation failed - "
-					"memory is in use\n");
-			return;
-		}
-
-		printk(KERN_INFO "Reserving %ldMB of memory at %ldMB "
-				"for crashkernel (System RAM: %ldMB)\n",
-				(unsigned long)(crash_size >> 20),
-				(unsigned long)(crash_base >> 20),
-				(unsigned long)(total_mem >> 20));
-
-		crashk_res.start = crash_base;
-		crashk_res.end   = crash_base + crash_size - 1;
-		insert_resource(&iomem_resource, &crashk_res);
-	}
-}
-#else
-void __init reserve_crashkernel(void)
-{}
-#endif
-
 static struct resource standard_io_resources[] = {
 	{ .name = "dma1", .start = 0x00, .end = 0x1f,
 		.flags = IORESOURCE_BUSY | IORESOURCE_IO },
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH 00/16] x86: merge setup_32/64.c, Yinghai Lu, (Wed Jun 25, 5:48 pm)
[PATCH 07/16] x86: space to tab in setup_arch, Yinghai Lu, (Wed Jun 25, 5:53 pm)
[PATCH 08/16] x86: rename setup_32.c to setup.c, Yinghai Lu, (Wed Jun 25, 5:54 pm)
[PATCH 09/16] x86: move boot_params back to setup.c, Yinghai Lu, (Wed Jun 25, 5:55 pm)
[PATCH 11/16] x86: move back crashkernel back to setup.c, Yinghai Lu, (Wed Jun 25, 5:57 pm)
[PATCH] x86: clean up ARCH_SETUP, Yinghai Lu, (Wed Jun 25, 7:52 pm)
[PATCH] x86: move fix mapping page table range early, Yinghai Lu, (Wed Jun 25, 9:51 pm)
Re: [PATCH 00/16] x86: merge setup_32/64.c, Ingo Molnar, (Thu Jun 26, 2:47 am)
Re: [PATCH 00/16] x86: merge setup_32/64.c, Ingo Molnar, (Thu Jun 26, 3:02 am)
Re: [PATCH 00/16] x86: merge setup_32/64.c, Yinghai Lu, (Thu Jun 26, 3:06 am)
Re: [PATCH 00/16] x86: merge setup_32/64.c, Ingo Molnar, (Thu Jun 26, 4:01 am)
Re: [PATCH] x86: clean up ARCH_SETUP, Ingo Molnar, (Thu Jun 26, 6:26 am)
Re: [PATCH 00/16] x86: merge setup_32/64.c, Huang, Ying, (Thu Jun 26, 7:51 pm)
[PATCH] x86: early res print out alignment, Yinghai Lu, (Thu Jun 26, 11:17 pm)
[PATCH] x86: early res print out alignment v2, Yinghai Lu, (Fri Jun 27, 3:36 pm)
[PATCH] x86: fix init_memory_mapping over boundary, Yinghai Lu, (Fri Jun 27, 3:38 pm)
[PATCH] x86: fix init_memory_mapping over boundary v2, Yinghai Lu, (Fri Jun 27, 10:47 pm)
Re: [PATCH] x86: early res print out alignment v2, Ingo Molnar, (Fri Jun 27, 11:36 pm)
Re: [PATCH] x86: fix init_memory_mapping over boundary v2, Jeremy Fitzhardinge, (Sat Jun 28, 10:38 am)
Re: [PATCH] x86: fix init_memory_mapping over boundary v4, Jeremy Fitzhardinge, (Sat Jun 28, 7:22 pm)
Re: [PATCH] x86: early res print out alignment v2, Yinghai Lu, (Sat Jun 28, 9:42 pm)
Re: [PATCH] x86: fix init_memory_mapping over boundary v4, Jeremy Fitzhardinge, (Sat Jun 28, 10:18 pm)