From: Eric Dumazet Date: Wed, 27 Oct 2010 17:33:43 +0000 (+0200) Subject: numa: fix slab_node(MPOL_BIND) X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=800416f799e0723635ac2d720ad4449917a1481c;p=GitHub%2FLineageOS%2Fandroid_kernel_motorola_exynos9610.git 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 Cc: Mel Gorman Cc: Christoph Lameter Cc: Lee Schermerhorn Cc: Andrew Morton Cc: stable@kernel.org Signed-off-by: Linus Torvalds --- 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) (void)first_zones_zonelist(zonelist, highest_zoneidx, &policy->v.nodes, &zone); - return zone->node; + return zone ? zone->node : numa_node_id(); } default: