mm: page_alloc: increase __GFP_BITS_SHIFT to include __GFP_OTHER_NODE
__GFP_OTHER_NODE is used for NUMA allocations on behalf of other nodes. It's supposed to be passed through from the page allocator to zone_statistics(), but it never gets there as gfp_allowed_mask is not wide enough and masks out the flag early in the allocation path. The result is an accounting glitch where successful NUMA allocations by-agent are not properly attributed as local. Increase __GFP_BITS_SHIFT so that it includes __GFP_OTHER_NODE. Signed-off-by:Johannes Weiner <hannes@cmpxchg.org> Acked-by:
Andi Kleen <ak@linux.intel.com> Reviewed-by:
Minchan Kim <minchan.kim@gmail.com> Acked-by:
Mel Gorman <mgorman@suse.de> Reviewed-by:
Michal Hocko <mhocko@suse.cz> Signed-off-by:
Andrew Morton <akpm@linux-foundation.org> Signed-off-by:
Linus Torvalds <torvalds@linux-foundation.org>
parent
f7b9fcbb
Please register or sign in to comment