Re: [PATCH 2.5/13] memblock: Use __meminit[data] instead of __init[data]

Tejun Heo
2011-07-15T05:45:21Z

Hello,

On Thu, Jul 14, 2011 at 02:00:51PM -0700, Yinghai Lu wrote:
> >  #ifdef ARCH_DISCARD_MEMBLOCK
> > -#define __init_memblock __init
> > -#define __initdata_memblock __initdata
> > +#define __init_memblock __meminit
> > +#define __initdata_memblock __meminitdata
> >  #else
> >  #define __init_memblock
> >  #define __initdata_memblock
>
> that is not good. It will keep memblock.reserved related data and
> functions after boot.
> and those data/func are not used after slab is ready.

Yeah, if MEMORY_HOTPLUG is enabled. It isn't too big area to begin
with and early_node_map[] and related code removal should offset it.
The problem is that refining different __init tags here is a bit
complex thanks to DISCARD_MEMBLOCK. We end up having to deal with the
combination of DISCARD_MEMBLOCK and MEMORY_HOTPLUG. I was hoping that
once we get memblock usage more consistent across different archs, we
could do away with DISCARD_MEMBLOCK.

Thank you.

--
tejun