diff options
author | KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> | 2009-01-07 21:08:25 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-01-08 11:31:09 -0500 |
commit | c772be939e078afd2505ede7d596a30f8f61de95 (patch) | |
tree | 2cf3157fdd2b3570e105f2d91576585750526fb3 /mm/vmscan.c | |
parent | a7885eb8ad465ec9db99ac5b5e6680f0ca8e11c8 (diff) |
memcg: fix calculation of active_ratio
Currently, inactive_ratio of memcg is calculated at setting limit.
because page_alloc.c does so and current implementation is straightforward
porting.
However, memcg introduced hierarchy feature recently. In hierarchy
restriction, memory limit is not only decided memory.limit_in_bytes of
current cgroup, but also parent limit and sibling memory usage.
Then, The optimal inactive_ratio is changed frequently. So, everytime
calculation is better.
Tested-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Acked-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Signed-off-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: Balbir Singh <balbir@linux.vnet.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm/vmscan.c')
-rw-r--r-- | mm/vmscan.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/mm/vmscan.c b/mm/vmscan.c index ece2f405187f..9a27c44aa327 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c | |||
@@ -1340,7 +1340,7 @@ static int inactive_anon_is_low(struct zone *zone, struct scan_control *sc) | |||
1340 | if (scanning_global_lru(sc)) | 1340 | if (scanning_global_lru(sc)) |
1341 | low = inactive_anon_is_low_global(zone); | 1341 | low = inactive_anon_is_low_global(zone); |
1342 | else | 1342 | else |
1343 | low = mem_cgroup_inactive_anon_is_low(sc->mem_cgroup, zone); | 1343 | low = mem_cgroup_inactive_anon_is_low(sc->mem_cgroup); |
1344 | return low; | 1344 | return low; |
1345 | } | 1345 | } |
1346 | 1346 | ||