OOM: use the node_memory_map instead of constructing one on the fly constrained_alloc() builds its own memory map for nodes with memory. We have that available in node_memory_map now. So simplify the code. Signed-off-by: Christoph Lameter Acked-by: Nishanth Aravamudan Index: linux-2.6.22-rc4-mm2/mm/oom_kill.c =================================================================== --- linux-2.6.22-rc4-mm2.orig/mm/oom_kill.c 2007-06-13 23:11:32.000000000 -0700 +++ linux-2.6.22-rc4-mm2/mm/oom_kill.c 2007-06-13 23:12:39.000000000 -0700 @@ -176,14 +176,7 @@ static inline int constrained_alloc(stru { #ifdef CONFIG_NUMA struct zone **z; - nodemask_t nodes; - int node; - - nodes_clear(nodes); - /* node has memory ? */ - for_each_online_node(node) - if (NODE_DATA(node)->node_present_pages) - node_set(node, nodes); + nodemask_t nodes = node_states[N_MEMORY]; for (z = zonelist->zones; *z; z++) if (cpuset_zone_allowed_softwall(*z, gfp_mask))