• minskey guo's avatar
    cpu/mem hotplug: enable CPUs online before local memory online · cf23422b
    minskey guo authored
    Enable users to online CPUs even if the CPUs belongs to a numa node which
    doesn't have onlined local memory.
    
    The zonlists(pg_data_t.node_zonelists[]) of a numa node are created either
    in system boot/init period, or at the time of local memory online.  For a
    numa node without onlined local memory, its zonelists are not initialized
    at present.  As a result, any memory allocation operations executed by
    CPUs within this node will fail.  In fact, an out-of-memory error is
    triggered when attempt to online CPUs before memory comes to online.
    
    This patch tries to create zonelists for such numa nodes, so that the
    memory allocation for this node can be fallback'ed to other nodes.
    
    [akpm@linux-foundation.org: remove unneeded export]
    [akpm@linux-foundation.org: coding-style fixes]
    Signed-off-by: minskey guo<chaohong.guo@intel.com>
    Cc: Minchan Kim <minchan.kim@gmail.com>
    Cc: Yasunori Goto <y-goto@jp.fujitsu.com>
    Cc: Andi Kleen <andi@firstfloor.org>
    Cc: Christoph Lameter <cl@linux-foundation.org>
    Cc: Tejun Heo <tj@kernel.org>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    cf23422b
memory_hotplug.c 22 KB