diff options
author | KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> | 2007-10-16 01:26:14 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-10-16 09:43:02 -0700 |
commit | 48e94196a533dbee17c252bf80d0310fb8c8c2eb (patch) | |
tree | 9b29060b0e2600dc7da645fd436dc94c25d1fb36 /arch/ia64/mm | |
parent | de33b821f34dc9e2fabf81a8ba464f3ef039bd00 (diff) | |
download | blackbird-op-linux-48e94196a533dbee17c252bf80d0310fb8c8c2eb.tar.gz blackbird-op-linux-48e94196a533dbee17c252bf80d0310fb8c8c2eb.zip |
fix memory hot remove not configured case.
Now, arch dependent code around CONFIG_MEMORY_HOTREMOVE is a mess.
This patch cleans up them. This is against 2.6.23-rc6-mm1.
- fix compile failure on ia64/ CONFIG_MEMORY_HOTPLUG && !CONFIG_MEMORY_HOTREMOVE case.
- For !CONFIG_MEMORY_HOTREMOVE, add generic no-op remove_memory(),
which returns -EINVAL.
- removed remove_pages() only used in powerpc.
- removed no-op remove_memory() in i386, sh, sparc64, x86_64.
- only powerpc returns -ENOSYS at memory hot remove(no-op). changes it
to return -EINVAL.
Note:
Currently, only ia64 supports CONFIG_MEMORY_HOTREMOVE. I welcome other
archs if there are requirements and testers.
Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/ia64/mm')
-rw-r--r-- | arch/ia64/mm/init.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/ia64/mm/init.c b/arch/ia64/mm/init.c index 947ec0c73234..3e10152abbf0 100644 --- a/arch/ia64/mm/init.c +++ b/arch/ia64/mm/init.c @@ -718,7 +718,7 @@ int arch_add_memory(int nid, u64 start, u64 size) return ret; } - +#ifdef CONFIG_MEMORY_HOTREMOVE int remove_memory(u64 start, u64 size) { unsigned long start_pfn, end_pfn; @@ -734,4 +734,5 @@ out: return ret; } EXPORT_SYMBOL_GPL(remove_memory); +#endif /* CONFIG_MEMORY_HOTREMOVE */ #endif |