Hi Andrew,
Resending, since I haven't heard anything back yet.
Description: Fix a small typo in arch/i386/mm/init.c. Confirmed to fix
BugMe #6538.
Signed-off-by: Nishanth Aravamudan <[email protected]>
diff -urpN 2.6.17-rc4/arch/i386/mm/init.c 2.6.17-rc4-dev/arch/i386/mm/init.c
--- 2.6.17-rc4/arch/i386/mm/init.c 2006-05-12 10:26:59.000000000 -0700
+++ 2.6.17-rc4-dev/arch/i386/mm/init.c 2006-05-12 13:49:38.000000000 -0700
@@ -651,7 +651,7 @@ void __init mem_init(void)
* Specifically, in the case of x86, we will always add
* memory to the highmem for now.
*/
-#ifdef CONFIG_HOTPLUG_MEMORY
+#ifdef CONFIG_MEMORY_HOTPLUG
#ifndef CONFIG_NEED_MULTIPLE_NODES
int add_memory(u64 start, u64 size)
{
--
Nishanth Aravamudan <[email protected]>
IBM Linux Technology Center
On Tue, 2006-05-16 at 09:50 -0700, Nishanth Aravamudan wrote:
> Hi Andrew,
>
> Resending, since I haven't heard anything back yet.
>
> Description: Fix a small typo in arch/i386/mm/init.c. Confirmed to fix
> BugMe #6538.
>
> Signed-off-by: Nishanth Aravamudan <[email protected]>
Acked-by: Dave Hansen <[email protected]>
I had a hunk in a patch in my tree that fixed this as part of the
hot-add for i386 debugging patches. I missed that the upstream patch
had this junk in it. Thanks for finding it.
-- Dave
Nishanth Aravamudan <[email protected]> wrote:
>
> Hi Andrew,
>
> Resending, since I haven't heard anything back yet.
>
> Description: Fix a small typo in arch/i386/mm/init.c. Confirmed to fix
> BugMe #6538.
>
> Signed-off-by: Nishanth Aravamudan <[email protected]>
>
> diff -urpN 2.6.17-rc4/arch/i386/mm/init.c 2.6.17-rc4-dev/arch/i386/mm/init.c
> --- 2.6.17-rc4/arch/i386/mm/init.c 2006-05-12 10:26:59.000000000 -0700
> +++ 2.6.17-rc4-dev/arch/i386/mm/init.c 2006-05-12 13:49:38.000000000 -0700
> @@ -651,7 +651,7 @@ void __init mem_init(void)
> * Specifically, in the case of x86, we will always add
> * memory to the highmem for now.
> */
> -#ifdef CONFIG_HOTPLUG_MEMORY
> +#ifdef CONFIG_MEMORY_HOTPLUG
> #ifndef CONFIG_NEED_MULTIPLE_NODES
> int add_memory(u64 start, u64 size)
> {
>
I already have this patch queued up but I was half-wondering whether to not
send it in for 2.6.17. Partly because the kernel actually links and
apparently works, which is a rarity when memory hotplug is concerned.
And partly because, well, just look at the patch. It will give the kernel
new global symbols add_memory() and remove_memory(). So how come it links
OK at present? And how do we know that it'll link correctly with all
configs once those symbols are added? If it _does_ link OK with these
symbols added then they're not needed anyway.
So there's something fishy going on here.
On Tue, 2006-05-16 at 10:24 -0700, Andrew Morton wrote:
> And partly because, well, just look at the patch. It will give the kernel
> new global symbols add_memory() and remove_memory(). So how come it links
> OK at present?
It links OK now with normal configurations, because nobody references
add/remove_memory() unless MEMORY_HOTPLUG is enabled. The user in the
bug report
http://bugme.osdl.org/show_bug.cgi?id=6538
managed to enable sparsemem and memory hotplug. The generic hotplug
code referenced those symbols, and they got a link error.
-- Dave
On 16.05.2006 [10:24:27 -0700], Andrew Morton wrote:
> Nishanth Aravamudan <[email protected]> wrote:
> >
> > Hi Andrew,
> >
> > Resending, since I haven't heard anything back yet.
> >
> > Description: Fix a small typo in arch/i386/mm/init.c. Confirmed to fix
> > BugMe #6538.
> >
> > Signed-off-by: Nishanth Aravamudan <[email protected]>
> >
> > diff -urpN 2.6.17-rc4/arch/i386/mm/init.c 2.6.17-rc4-dev/arch/i386/mm/init.c
> > --- 2.6.17-rc4/arch/i386/mm/init.c 2006-05-12 10:26:59.000000000 -0700
> > +++ 2.6.17-rc4-dev/arch/i386/mm/init.c 2006-05-12 13:49:38.000000000 -0700
> > @@ -651,7 +651,7 @@ void __init mem_init(void)
> > * Specifically, in the case of x86, we will always add
> > * memory to the highmem for now.
> > */
> > -#ifdef CONFIG_HOTPLUG_MEMORY
> > +#ifdef CONFIG_MEMORY_HOTPLUG
> > #ifndef CONFIG_NEED_MULTIPLE_NODES
> > int add_memory(u64 start, u64 size)
> > {
> >
>
> I already have this patch queued up but I was half-wondering whether
> to not send it in for 2.6.17. Partly because the kernel actually
> links and apparently works, which is a rarity when memory hotplug is
> concerned.
>
> And partly because, well, just look at the patch. It will give the
> kernel new global symbols add_memory() and remove_memory(). So how
> come it links OK at present?
BugMe #6538 (http://bugzilla.kernel.org/show_bug.cgi?id=6538) indicates
that we currently fail to link with at least 1 .config currently. Toralf
indicated this patch fixes the build for that particular .config.
> And how do we know that it'll link correctly with all configs once
> those symbols are added? If it _does_ link OK with these symbols
> added then they're not needed anyway.
>
> So there's something fishy going on here.
I won't deny that :)
Thanks,
Nish
--
Nishanth Aravamudan <[email protected]>
IBM Linux Technology Center
On Tue, 2006-05-16 at 10:34 -0700, Nishanth Aravamudan wrote:
> > So there's something fishy going on here.
>
> I won't deny that :)
I think the fishiness probably comes from the apparent fact that nobody
besides me ever enabled sparsemem, then memory hotplug on x86. I never
caught or hit it because I never tried that config without the other
patches that make "fake hotplug" work on x86.
-- Dave
On Tue, 16 May 2006 10:40:16 -0700
Dave Hansen <[email protected]> wrote:
> On Tue, 2006-05-16 at 10:34 -0700, Nishanth Aravamudan wrote:
> > > So there's something fishy going on here.
> >
> > I won't deny that :)
>
> I think the fishiness probably comes from the apparent fact that nobody
> besides me ever enabled sparsemem, then memory hotplug on x86.
I usually enable CONFIG_MEMORY_HOTPLUG + CONFIG_SPARSEMEM and test it.
Then I sent a patch in past ;)
But I wonder usual x86 men will never use memory hot-add until memory
hot-remove is implemented.
-Kame