aboutsummaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python
diff options
context:
space:
mode:
authorJohannes Weiner <[email protected]>2013-02-22 16:32:19 -0800
committerLinus Torvalds <[email protected]>2013-02-23 17:50:09 -0800
commit9b4f98cdac9683ee9cdb28c582a81223f0c10a3f (patch)
treebca65df9e9bca718b7afc4fb15c56d104e0ba346 /tools/perf/scripts/python
parent9a2651140ef740b3b67ad47ea3d0af75581aacc6 (diff)
mm: vmscan: compaction works against zones, not lruvecs
The restart logic for when reclaim operates back to back with compaction is currently applied on the lruvec level. But this does not make sense, because the container of interest for compaction is a zone as a whole, not the zone pages that are part of a certain memory cgroup. Negative impact is bounded. For one, the code checks that the lruvec has enough reclaim candidates, so it does not risk getting stuck on a condition that can not be fulfilled. And the unfairness of hammering on one particular memory cgroup to make progress in a zone will be amortized by the round robin manner in which reclaim goes through the memory cgroups. Still, this can lead to unnecessary allocation latencies when the code elects to restart on a hard to reclaim or small group when there are other, more reclaimable groups in the zone. Move this logic to the zone level and restart reclaim for all memory cgroups in a zone when compaction requires more free pages from it. [[email protected]: no need for min_t] Signed-off-by: Johannes Weiner <[email protected]> Reviewed-by: Rik van Riel <[email protected]> Acked-by: Mel Gorman <[email protected]> Reviewed-by: Michal Hocko <[email protected]> Cc: Hugh Dickins <[email protected]> Cc: Satoru Moriya <[email protected]> Cc: Simon Jeons <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python')
0 files changed, 0 insertions, 0 deletions