mm: page_alloc: abort fair zone allocation policy when remotes nodes are encountered
The purpose of numa_zonelist_order=zone is to preserve lower zones for use with 32-bit devices. If locality is preferred then the numa_zonelist_order=node policy should be used. Unfortunately, the fair zone allocation policy overrides this by skipping zones on remote nodes until the lower one is found. While this makes sense from a page aging and performance perspective, it breaks the expected zonelist policy. This patch restores the expected behaviour for zone-list ordering. Signed-off-by: Mel Gorman <mgorman@suse.de> Acked-by: Johannes Weiner <hannes@cmpxchg.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
bb0b6dffa2
commit
f7b5d64794
@ -1965,7 +1965,7 @@ zonelist_scan:
|
|||||||
*/
|
*/
|
||||||
if (alloc_flags & ALLOC_FAIR) {
|
if (alloc_flags & ALLOC_FAIR) {
|
||||||
if (!zone_local(preferred_zone, zone))
|
if (!zone_local(preferred_zone, zone))
|
||||||
continue;
|
break;
|
||||||
if (zone_page_state(zone, NR_ALLOC_BATCH) <= 0)
|
if (zone_page_state(zone, NR_ALLOC_BATCH) <= 0)
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user