aboutsummaryrefslogtreecommitdiffstats
path: root/mm/memcontrol.c
diff options
context:
space:
mode:
authorDaisuke Nishimura <nishimura@mxp.nes.nec.co.jp>2010-08-10 21:02:59 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2010-08-11 11:59:18 -0400
commitbd0d24bfe8a8f8d2400569740874a67d164d40a9 (patch)
tree9d592f6566adacc3e8da3d2c06411a16b2d45763 /mm/memcontrol.c
parent2bd9bb206b338888b226e70139a25a67d10007f0 (diff)
memcg: remove redundant code
- try_get_mem_cgroup_from_mm() calls rcu_read_lock/unlock by itself, so we don't have to call them in task_in_mem_cgroup(). - *mz is not used in __mem_cgroup_uncharge_common(). - we don't have to call lookup_page_cgroup() in mem_cgroup_end_migration() after we've cleared PCG_MIGRATION of @oldpage. - remove empty comment. - remove redundant empty line in mem_cgroup_cache_charge(). Signed-off-by: Daisuke Nishimura <nishimura@mxp.nes.nec.co.jp> Acked-by: Balbir Singh <balbir@linux.vnet.ibm.com> Acked-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm/memcontrol.c')
-rw-r--r--mm/memcontrol.c10
1 files changed, 0 insertions, 10 deletions
diff --git a/mm/memcontrol.c b/mm/memcontrol.c
index 27981e705b0a..79a53f0f0cf5 100644
--- a/mm/memcontrol.c
+++ b/mm/memcontrol.c
@@ -840,9 +840,7 @@ int task_in_mem_cgroup(struct task_struct *task, const struct mem_cgroup *mem)
840 struct mem_cgroup *curr = NULL; 840 struct mem_cgroup *curr = NULL;
841 841
842 task_lock(task); 842 task_lock(task);
843 rcu_read_lock();
844 curr = try_get_mem_cgroup_from_mm(task->mm); 843 curr = try_get_mem_cgroup_from_mm(task->mm);
845 rcu_read_unlock();
846 task_unlock(task); 844 task_unlock(task);
847 if (!curr) 845 if (!curr)
848 return 0; 846 return 0;
@@ -2092,7 +2090,6 @@ int mem_cgroup_cache_charge(struct page *page, struct mm_struct *mm,
2092 if (!(gfp_mask & __GFP_WAIT)) { 2090 if (!(gfp_mask & __GFP_WAIT)) {
2093 struct page_cgroup *pc; 2091 struct page_cgroup *pc;
2094 2092
2095
2096 pc = lookup_page_cgroup(page); 2093 pc = lookup_page_cgroup(page);
2097 if (!pc) 2094 if (!pc)
2098 return 0; 2095 return 0;
@@ -2286,7 +2283,6 @@ __mem_cgroup_uncharge_common(struct page *page, enum charge_type ctype)
2286{ 2283{
2287 struct page_cgroup *pc; 2284 struct page_cgroup *pc;
2288 struct mem_cgroup *mem = NULL; 2285 struct mem_cgroup *mem = NULL;
2289 struct mem_cgroup_per_zone *mz;
2290 2286
2291 if (mem_cgroup_disabled()) 2287 if (mem_cgroup_disabled())
2292 return NULL; 2288 return NULL;
@@ -2340,7 +2336,6 @@ __mem_cgroup_uncharge_common(struct page *page, enum charge_type ctype)
2340 * special functions. 2336 * special functions.
2341 */ 2337 */
2342 2338
2343 mz = page_cgroup_zoneinfo(pc);
2344 unlock_page_cgroup(pc); 2339 unlock_page_cgroup(pc);
2345 2340
2346 memcg_check_events(mem, page); 2341 memcg_check_events(mem, page);
@@ -2652,11 +2647,8 @@ void mem_cgroup_end_migration(struct mem_cgroup *mem,
2652 ClearPageCgroupMigration(pc); 2647 ClearPageCgroupMigration(pc);
2653 unlock_page_cgroup(pc); 2648 unlock_page_cgroup(pc);
2654 2649
2655 if (unused != oldpage)
2656 pc = lookup_page_cgroup(unused);
2657 __mem_cgroup_uncharge_common(unused, MEM_CGROUP_CHARGE_TYPE_FORCE); 2650 __mem_cgroup_uncharge_common(unused, MEM_CGROUP_CHARGE_TYPE_FORCE);
2658 2651
2659 pc = lookup_page_cgroup(used);
2660 /* 2652 /*
2661 * If a page is a file cache, radix-tree replacement is very atomic 2653 * If a page is a file cache, radix-tree replacement is very atomic
2662 * and we can skip this check. When it was an Anon page, its mapcount 2654 * and we can skip this check. When it was an Anon page, its mapcount
@@ -3800,8 +3792,6 @@ static int mem_cgroup_oom_control_read(struct cgroup *cgrp,
3800 return 0; 3792 return 0;
3801} 3793}
3802 3794
3803/*
3804 */
3805static int mem_cgroup_oom_control_write(struct cgroup *cgrp, 3795static int mem_cgroup_oom_control_write(struct cgroup *cgrp,
3806 struct cftype *cft, u64 val) 3796 struct cftype *cft, u64 val)
3807{ 3797{