Commit b532f4af authored by Andrew Morton's avatar Andrew Morton Committed by Linus Torvalds

[PATCH] vmscan: zone balancing fix

We currently have a problem with the balancing of reclaim between zones: much
more reclaim happens against highmem than against lowmem.

This patch partially fixes this by changing the direct reclaim path so it
does not bale out of the zone walk after having reclaimed sufficient pages
from highmem: go on to reclaim from lowmem regardless of how many pages we
reclaimed from lowmem.
parent 768c4fcc
...@@ -827,8 +827,6 @@ shrink_caches(struct zone **zones, int priority, int *total_scanned, ...@@ -827,8 +827,6 @@ shrink_caches(struct zone **zones, int priority, int *total_scanned,
max_scan = to_reclaim * 2; max_scan = to_reclaim * 2;
ret += shrink_zone(zone, max_scan, gfp_mask, ret += shrink_zone(zone, max_scan, gfp_mask,
to_reclaim, total_scanned, ps); to_reclaim, total_scanned, ps);
if (ret >= nr_pages)
break;
} }
return ret; return ret;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment