Re: [bug] __meminit breaks cpu hotplug

From: Ravikiran G Thirumalai
Date: Fri Jan 20 2006 - 20:26:48 EST


On Fri, Jan 20, 2006 at 04:55:21PM -0800, Andrew Morton wrote:
> Ravikiran G Thirumalai <kiran@xxxxxxxxxxxx> wrote:
> > -#define __meminitdata __initdata
> > -#define __memexit __exit
> > -#define __memexitdata __exitdata
> > +#define __meminit __cpuinit
> > +#define __meminitdata __cpuinitdata
> > +#define __memexit __cpuexit
> > +#define __memexitdata __cpuexitdata
>
> This looks wrong. The __meminit and __cpuinit definitions we have now are
> OK, aren't they? Surely the problem is that some functions/variables are
> incorrectly tagged?

I hit the bug on pageset_cpuup_callback, which is obviously __cpuinit, but
has been marked __meminit. Yeah .. bad patch duh!

For some reason I thought all other functions marked with __meminit looked
like __cpuinit candidates....while just pageset_cpuup_callback should be
changed to __cpuinit


Index: linux-2.6.16-rc1/mm/page_alloc.c
===================================================================
--- linux-2.6.16-rc1.orig/mm/page_alloc.c 2006-01-17 14:12:17.000000000 -0800
+++ linux-2.6.16-rc1/mm/page_alloc.c 2006-01-20 17:21:03.000000000 -0800
@@ -1923,7 +1923,7 @@ static inline void free_zone_pagesets(in
}
}

-static int __meminit pageset_cpuup_callback(struct notifier_block *nfb,
+static int __cpuinit pageset_cpuup_callback(struct notifier_block *nfb,
unsigned long action,
void *hcpu)
{
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/