On Thu, Jan 19, 2012 at 6:07 AM, Michal Hocko <mhocko@xxxxxxx> wrote: > On Fri 13-01-12 17:42:23, KAMEZAWA Hiroyuki wrote: >> From a9b51d6204d7f8714173c46a306caf413ad25d4e Mon Sep 17 00:00:00 2001 >> From: KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> >> Date: Thu, 12 Jan 2012 18:40:26 +0900 >> Subject: [PATCH 5/7] memcg: remove PCG_FILE_MAPPED >> >> Because we can update page's status and memcg's statistics without >> race with move_account, this flag is unnecessary. > > I would really appreciate a little bit more description ;) > > 8725d541 [memcg: fix race in file_mapped accounting] has added the > flag to resolve a race when a move_account happened between page's > mapcount has been updated and this has been accounted to memcg. > This, however, cannot happen anymore because mem_cgroup_update_page_stat > is always enclosed by mem_cgroup_begin_update_page_stat and > mem_cgroup_end_update_page_stat along with the mapcount update. Agree on better documentation. > >> >> Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> > > Other than that looks good and nice to see another one go away. > I will add my ack along with the patches which this depend on once they > settle down if you don't mind > > Thanks > >> --- >> include/linux/page_cgroup.h | 6 ------ >> mm/memcontrol.c | 6 +----- >> 2 files changed, 1 insertions(+), 11 deletions(-) >> >> diff --git a/include/linux/page_cgroup.h b/include/linux/page_cgroup.h >> index 5dba799..0b9a48a 100644 >> --- a/include/linux/page_cgroup.h >> +++ b/include/linux/page_cgroup.h >> @@ -7,8 +7,6 @@ enum { >> PCG_CACHE, /* charged as cache */ >> PCG_USED, /* this object is in use. */ >> PCG_MIGRATION, /* under page migration */ >> - /* flags for mem_cgroup and file and I/O status */ >> - PCG_FILE_MAPPED, /* page is accounted as "mapped" */ >> __NR_PCG_FLAGS, >> }; >> >> @@ -72,10 +70,6 @@ TESTPCGFLAG(Used, USED) >> CLEARPCGFLAG(Used, USED) >> SETPCGFLAG(Used, USED) >> >> -SETPCGFLAG(FileMapped, FILE_MAPPED) >> -CLEARPCGFLAG(FileMapped, FILE_MAPPED) >> -TESTPCGFLAG(FileMapped, FILE_MAPPED) >> - >> SETPCGFLAG(Migration, MIGRATION) >> CLEARPCGFLAG(Migration, MIGRATION) >> TESTPCGFLAG(Migration, MIGRATION) >> diff --git a/mm/memcontrol.c b/mm/memcontrol.c >> index 30ef810..a96800d 100644 >> --- a/mm/memcontrol.c >> +++ b/mm/memcontrol.c >> @@ -1952,10 +1952,6 @@ void mem_cgroup_update_page_stat(struct page *page, >> >> switch (idx) { >> case MEMCG_NR_FILE_MAPPED: >> - if (val > 0) >> - SetPageCgroupFileMapped(pc); >> - else if (!page_mapped(page)) >> - ClearPageCgroupFileMapped(pc); >> idx = MEM_CGROUP_STAT_FILE_MAPPED; >> break; >> default: >> @@ -2606,7 +2602,7 @@ static int mem_cgroup_move_account(struct page *page, >> >> mem_cgroup_account_move_wlock(page, &flags); >> >> - if (PageCgroupFileMapped(pc)) { >> + if (page_mapcount(page)) { Does it includes anon pages , should it be if (page_mapped(page) && !PageAnon(page)) --Ying >> /* Update mapped_file data for mem_cgroup */ >> preempt_disable(); >> __this_cpu_dec(from->stat->count[MEM_CGROUP_STAT_FILE_MAPPED]); >> -- >> 1.7.4.1 >> >> >> -- >> To unsubscribe from this list: send the line "unsubscribe cgroups" in >> the body of a message to majordomo@xxxxxxxxxxxxxxx >> More majordomo info at http://vger.kernel.org/majordomo-info.html > > -- > Michal Hocko > SUSE Labs > SUSE LINUX s.r.o. > Lihovarska 1060/12 > 190 00 Praha 9 > Czech Republic -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href