Просмотр исходного кода

memcg: do not open code accesses to res_counter members

We should use the accessor res_counter_read_u64 for that.

Although a purely cosmetic change is sometimes better delayed, to avoid
conflicting with other people's work, we are starting to have people
touching this code as well, and reproducing the open code behavior
because that's the standard =)

Time to fix it, then.

Signed-off-by: Glauber Costa <glommer@parallels.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Acked-by: Michal Hocko <mhocko@suse.cz>
Cc: 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>
Glauber Costa 13 лет назад
Родитель
Сommit
569530fb1b
1 измененных файлов с 2 добавлено и 2 удалено
  1. 2 2
      mm/memcontrol.c

+ 2 - 2
mm/memcontrol.c

@@ -3763,7 +3763,7 @@ static int mem_cgroup_force_empty(struct mem_cgroup *memcg, bool free_all)
 			goto try_to_free;
 			goto try_to_free;
 		cond_resched();
 		cond_resched();
 	/* "ret" should also be checked to ensure all lists are empty. */
 	/* "ret" should also be checked to ensure all lists are empty. */
-	} while (memcg->res.usage > 0 || ret);
+	} while (res_counter_read_u64(&memcg->res, RES_USAGE) > 0 || ret);
 out:
 out:
 	css_put(&memcg->css);
 	css_put(&memcg->css);
 	return ret;
 	return ret;
@@ -3778,7 +3778,7 @@ static int mem_cgroup_force_empty(struct mem_cgroup *memcg, bool free_all)
 	lru_add_drain_all();
 	lru_add_drain_all();
 	/* try to free all pages in this cgroup */
 	/* try to free all pages in this cgroup */
 	shrink = 1;
 	shrink = 1;
-	while (nr_retries && memcg->res.usage > 0) {
+	while (nr_retries && res_counter_read_u64(&memcg->res, RES_USAGE) > 0) {
 		int progress;
 		int progress;
 
 
 		if (signal_pending(current)) {
 		if (signal_pending(current)) {