lkml.org 
[lkml]   [2008]   [Sep]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] [RESEND] x86_64: add memory hotremove config option

* Gary Hade <garyhade@us.ibm.com> wrote:

> Add memory hotremove config option to x86_64
>
> Memory hotremove functionality can currently be configured into the
> ia64, powerpc, and s390 kernels. This patch makes it possible to
> configure the memory hotremove functionality into the x86_64 kernel as
> well.

hm, why is it for 64-bit only?

> +++ linux-2.6.27-rc5/arch/x86/Kconfig 2008-09-03 13:34:55.000000000 -0700
> @@ -1384,6 +1384,9 @@
> def_bool y
> depends on X86_64 || (X86_32 && HIGHMEM)
>
> +config ARCH_ENABLE_MEMORY_HOTREMOVE
> + def_bool y

so this will break the build on 32-bit, if CONFIG_MEMORY_HOTREMOVE=y?
mm/memory_hotplug.c assumes that remove_memory() is provided by the
architecture.

> +#ifdef CONFIG_MEMORY_HOTREMOVE
> +int remove_memory(u64 start, u64 size)
> +{
> + unsigned long start_pfn, end_pfn;
> + unsigned long timeout = 120 * HZ;
> + int ret;
> + start_pfn = start >> PAGE_SHIFT;
> + end_pfn = start_pfn + (size >> PAGE_SHIFT);
> + ret = offline_pages(start_pfn, end_pfn, timeout);
> + if (ret)
> + goto out;
> + /* Arch-specific calls go here */
> +out:
> + return ret;
> +}
> +EXPORT_SYMBOL_GPL(remove_memory);
> +#endif /* CONFIG_MEMORY_HOTREMOVE */

hm, nothing appears to be arch-specific about this trivial wrapper
around offline_pages().

Shouldnt this be moved to the CONFIG_MEMORY_HOTREMOVE portion of
mm/memory_hotplug.c instead, as a weak function? That way architectures
only have to enable ARCH_ENABLE_MEMORY_HOTREMOVE - and architectures
with different/special needs can override it.

Ingo


\
 
 \ /
  Last update: 2008-09-05 19:47    [W:0.220 / U:0.176 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site