diff options
author | Eric Dumazet <eric.dumazet@gmail.com> | 2010-10-27 13:33:43 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-10-28 13:04:30 -0400 |
commit | 800416f799e0723635ac2d720ad4449917a1481c (patch) | |
tree | 75f18c93accdfd4b5f58ac3172a336607bde508b /mm | |
parent | 0851668fdd97e526b2a41f794b785c204dd3d3e0 (diff) |
numa: fix slab_node(MPOL_BIND)
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>
Cc: stable@kernel.org
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm')
-rw-r--r-- | mm/mempolicy.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/mm/mempolicy.c b/mm/mempolicy.c index 81a127643aea..4a57f135b76e 100644 --- a/mm/mempolicy.c +++ b/mm/mempolicy.c | |||
@@ -1597,7 +1597,7 @@ unsigned slab_node(struct mempolicy *policy) | |||
1597 | (void)first_zones_zonelist(zonelist, highest_zoneidx, | 1597 | (void)first_zones_zonelist(zonelist, highest_zoneidx, |
1598 | &policy->v.nodes, | 1598 | &policy->v.nodes, |
1599 | &zone); | 1599 | &zone); |
1600 | return zone->node; | 1600 | return zone ? zone->node : numa_node_id(); |
1601 | } | 1601 | } |
1602 | 1602 | ||
1603 | default: | 1603 | default: |