summaryrefslogtreecommitdiff
path: root/mm/mempolicy.c
diff options
context:
space:
mode:
authorEric Dumazet <eric.dumazet@gmail.com>2010-10-27 19:33:43 +0200
committerGreg Kroah-Hartman <gregkh@suse.de>2010-12-09 13:32:32 -0800
commit666adba6a0e8d326224b929c22b2c8725ddb0e69 (patch)
tree3f7313ff8566d2be791ccefdc15145ad36dbbcca /mm/mempolicy.c
parent0b756b34be743f75d875c7102ee353c9d073e206 (diff)
downloadlinux-3.10-666adba6a0e8d326224b929c22b2c8725ddb0e69.tar.gz
linux-3.10-666adba6a0e8d326224b929c22b2c8725ddb0e69.tar.bz2
linux-3.10-666adba6a0e8d326224b929c22b2c8725ddb0e69.zip
numa: fix slab_node(MPOL_BIND)
commit 800416f799e0723635ac2d720ad4449917a1481c upstream. When a node contains only HighMem memory, slab_node(MPOL_BIND) dereferences a NULL pointer. [ This code seems to go back all the way to commit 19770b32609b: "mm: filter based on a nodemask as well as a gfp_mask". Which was back in April 2008, and it got merged into 2.6.26. - Linus ] Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Cc: Mel Gorman <mel@csn.ul.ie> Cc: Christoph Lameter <cl@linux.com> Cc: Lee Schermerhorn <lee.schermerhorn@hp.com> Cc: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'mm/mempolicy.c')
-rw-r--r--mm/mempolicy.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/mm/mempolicy.c b/mm/mempolicy.c
index f969da5dd8a..c1002c68d61 100644
--- a/mm/mempolicy.c
+++ b/mm/mempolicy.c
@@ -1588,7 +1588,7 @@ unsigned slab_node(struct mempolicy *policy)
(void)first_zones_zonelist(zonelist, highest_zoneidx,
&policy->v.nodes,
&zone);
- return zone->node;
+ return zone ? zone->node : numa_node_id();
}
default: