diff options
author | Tejun Heo <tj@kernel.org> | 2011-07-14 05:46:03 -0400 |
---|---|---|
committer | H. Peter Anvin <hpa@linux.intel.com> | 2011-07-14 14:47:52 -0400 |
commit | c378ddd53f9b8832a46fd4fec050a97fc2269858 (patch) | |
tree | ef90f814ce569ef1cd3b6e64ea403d909f9d2c53 | |
parent | 474b881bf4ee86aba55d46a4fdf293de32cba91b (diff) |
memblock, x86: Make ARCH_DISCARD_MEMBLOCK a config option
From 6839454ae63f1eb21e515c10229ca95c22955fec Mon Sep 17 00:00:00 2001
From: Tejun Heo <tj@kernel.org>
Date: Thu, 14 Jul 2011 11:22:17 +0200
Make ARCH_DISCARD_MEMBLOCK a config option so that it can be handled
together with other MEMBLOCK options.
Signed-off-by: Tejun Heo <tj@kernel.org>
Link: http://lkml.kernel.org/r/20110714094603.GH3455@htj.dyndns.org
Cc: Yinghai Lu <yinghai@kernel.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
-rw-r--r-- | arch/x86/Kconfig | 1 | ||||
-rw-r--r-- | arch/x86/include/asm/memblock.h | 2 | ||||
-rw-r--r-- | include/linux/memblock.h | 2 | ||||
-rw-r--r-- | mm/Kconfig | 3 | ||||
-rw-r--r-- | mm/memblock.c | 2 |
5 files changed, 6 insertions, 4 deletions
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index 97f08941dd79..28116d4f7b64 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig | |||
@@ -26,6 +26,7 @@ config X86 | |||
26 | select HAVE_KPROBES | 26 | select HAVE_KPROBES |
27 | select HAVE_MEMBLOCK | 27 | select HAVE_MEMBLOCK |
28 | select HAVE_MEMBLOCK_NODE_MAP | 28 | select HAVE_MEMBLOCK_NODE_MAP |
29 | select ARCH_DISCARD_MEMBLOCK | ||
29 | select ARCH_WANT_OPTIONAL_GPIOLIB | 30 | select ARCH_WANT_OPTIONAL_GPIOLIB |
30 | select ARCH_WANT_FRAME_POINTERS | 31 | select ARCH_WANT_FRAME_POINTERS |
31 | select HAVE_DMA_ATTRS | 32 | select HAVE_DMA_ATTRS |
diff --git a/arch/x86/include/asm/memblock.h b/arch/x86/include/asm/memblock.h index 17a882e90ada..bc5667081aea 100644 --- a/arch/x86/include/asm/memblock.h +++ b/arch/x86/include/asm/memblock.h | |||
@@ -1,8 +1,6 @@ | |||
1 | #ifndef _X86_MEMBLOCK_H | 1 | #ifndef _X86_MEMBLOCK_H |
2 | #define _X86_MEMBLOCK_H | 2 | #define _X86_MEMBLOCK_H |
3 | 3 | ||
4 | #define ARCH_DISCARD_MEMBLOCK | ||
5 | |||
6 | void memblock_x86_reserve_range(u64 start, u64 end, char *name); | 4 | void memblock_x86_reserve_range(u64 start, u64 end, char *name); |
7 | void memblock_x86_free_range(u64 start, u64 end); | 5 | void memblock_x86_free_range(u64 start, u64 end); |
8 | 6 | ||
diff --git a/include/linux/memblock.h b/include/linux/memblock.h index 31def584cceb..2491355bb6e4 100644 --- a/include/linux/memblock.h +++ b/include/linux/memblock.h | |||
@@ -197,7 +197,7 @@ static inline unsigned long memblock_region_reserved_end_pfn(const struct memblo | |||
197 | region++) | 197 | region++) |
198 | 198 | ||
199 | 199 | ||
200 | #ifdef ARCH_DISCARD_MEMBLOCK | 200 | #ifdef CONFIG_ARCH_DISCARD_MEMBLOCK |
201 | #define __init_memblock __meminit | 201 | #define __init_memblock __meminit |
202 | #define __initdata_memblock __meminitdata | 202 | #define __initdata_memblock __meminitdata |
203 | #else | 203 | #else |
diff --git a/mm/Kconfig b/mm/Kconfig index 30a5d4792b83..7c5697116fcf 100644 --- a/mm/Kconfig +++ b/mm/Kconfig | |||
@@ -134,6 +134,9 @@ config HAVE_MEMBLOCK | |||
134 | config HAVE_MEMBLOCK_NODE_MAP | 134 | config HAVE_MEMBLOCK_NODE_MAP |
135 | boolean | 135 | boolean |
136 | 136 | ||
137 | config ARCH_DISCARD_MEMBLOCK | ||
138 | boolean | ||
139 | |||
137 | # eventually, we can have this option just 'select SPARSEMEM' | 140 | # eventually, we can have this option just 'select SPARSEMEM' |
138 | config MEMORY_HOTPLUG | 141 | config MEMORY_HOTPLUG |
139 | bool "Allow for memory hot-add" | 142 | bool "Allow for memory hot-add" |
diff --git a/mm/memblock.c b/mm/memblock.c index c4a8750406fc..ebc6119f1280 100644 --- a/mm/memblock.c +++ b/mm/memblock.c | |||
@@ -959,7 +959,7 @@ static int __init early_memblock(char *p) | |||
959 | } | 959 | } |
960 | early_param("memblock", early_memblock); | 960 | early_param("memblock", early_memblock); |
961 | 961 | ||
962 | #if defined(CONFIG_DEBUG_FS) && !defined(ARCH_DISCARD_MEMBLOCK) | 962 | #if defined(CONFIG_DEBUG_FS) && !defined(CONFIG_ARCH_DISCARD_MEMBLOCK) |
963 | 963 | ||
964 | static int memblock_debug_show(struct seq_file *m, void *private) | 964 | static int memblock_debug_show(struct seq_file *m, void *private) |
965 | { | 965 | { |