mm: bootmem: allocate in order node+goal, goal, node, anywhere
authorJohannes Weiner <hannes@cmpxchg.org>
Tue, 29 May 2012 22:06:34 +0000 (15:06 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 29 May 2012 23:22:21 +0000 (16:22 -0700)
commitab3818432294a19ad793a0965d89867b4ce6255b
tree1cffc6d97b2735b9ce776874e02b35adfc890e5e
parentc12ab504aa6076d1f1d37ee32431608ed11a1c3b
mm: bootmem: allocate in order node+goal, goal, node, anywhere

Match the nobootmem version of __alloc_bootmem_node.  Try to satisfy both
the node and the goal, then just the goal, then just the node, then
allocate anywhere before panicking.

Signed-off-by: Johannes Weiner <hannes@cmpxchg.org>
Acked-by: Tejun Heo <tj@kernel.org>
Acked-by: David S. Miller <davem@davemloft.net>
Cc: Yinghai Lu <yinghai@kernel.org>
Cc: Gavin Shan <shangw@linux.vnet.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
mm/bootmem.c