path: root/mm
diff options
authorDavid Rientjes <>2014-08-06 16:07:50 -0700
committerLinus Torvalds <>2014-08-06 18:01:21 -0700
commit8d060bf490930f305c4efc45724e861a268f4d2f (patch)
tree96c2c1ee46be53f13d73f365cbbf3615325738b1 /mm
parent6e90b58be7545c2cb2306fa186ccf5888c76c559 (diff)
mm, oom: ensure memoryless node zonelist always includes zones
With memoryless node support being worked on, it's possible that for optimizations that a node may not have a non-NULL zonelist. When CONFIG_NUMA is enabled and node 0 is memoryless, this means the zonelist for first_online_node may become NULL. The oom killer requires a zonelist that includes all memory zones for the sysrq trigger and pagefault out of memory handler. Ensure that a non-NULL zonelist is always passed to the oom killer. [ fix non-numa build] Signed-off-by: David Rientjes <> Cc: "Kirill A. Shutemov" <> Cc: Johannes Weiner <> Cc: Rik van Riel <> Signed-off-by: Andrew Morton <> Signed-off-by: Linus Torvalds <>
Diffstat (limited to 'mm')
1 files changed, 1 insertions, 1 deletions
diff --git a/mm/oom_kill.c b/mm/oom_kill.c
index 3291e82d4352..b0a1e1ff0353 100644
--- a/mm/oom_kill.c
+++ b/mm/oom_kill.c
@@ -694,7 +694,7 @@ void pagefault_out_of_memory(void)
if (mem_cgroup_oom_synchronize(true))
- zonelist = node_zonelist(first_online_node, GFP_KERNEL);
+ zonelist = node_zonelist(first_memory_node, GFP_KERNEL);
if (try_set_zonelist_oom(zonelist, GFP_KERNEL)) {
out_of_memory(NULL, 0, 0, NULL, false);
clear_zonelist_oom(zonelist, GFP_KERNEL);