Reza Arbab <arbab@xxxxxxxxxxxxxxxxxx> writes: > At boot, the movable_node option sets bottom-up memblock allocation. > > This reduces the chance that, in the window before movable memory has > been identified, an allocation for the kernel might come from a movable > node. By going bottom-up, early allocations will most likely come from > the same node as the kernel image, which is necessarily in a nonmovable > node. > > Then, once any known hotplug memory has been marked, allocation can be > reset back to top-down. On x86, this is done in numa_init(). This patch > does the same on power, in numa initmem_init(). > > Signed-off-by: Reza Arbab <arbab@xxxxxxxxxxxxxxxxxx> > --- > arch/powerpc/mm/numa.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/arch/powerpc/mm/numa.c b/arch/powerpc/mm/numa.c > index d7ac419..fdf1e69 100644 > --- a/arch/powerpc/mm/numa.c > +++ b/arch/powerpc/mm/numa.c > @@ -945,6 +945,9 @@ void __init initmem_init(void) > max_low_pfn = memblock_end_of_DRAM() >> PAGE_SHIFT; > max_pfn = max_low_pfn; > > + /* bottom-up allocation may have been set by movable_node */ > + memblock_set_bottom_up(false); > + By then we have done few memblock allocation right ? IMHO, we should do this early enough in prom.c after we do parse_early_param, with a comment there explaining that, we don't really support hotplug memblock and when we do that, this should be moved to a place where we can handle memblock allocation such that we avoid spreading memblock allocation to movable node. > if (parse_numa_properties()) > setup_nonnuma(); > else > -- > 1.8.3.1 -aneesh -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html