From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrea Righi Subject: [PATCH -mmotm 3/5] page_cgroup: introduce file cache flags Date: Mon, 15 Mar 2010 00:26:40 +0100 Message-ID: <1268609202-15581-4-git-send-email-arighi__42665.0312067524$1268609271$gmane$org@develer.com> References: <1268609202-15581-1-git-send-email-arighi@develer.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1268609202-15581-1-git-send-email-arighi-vWjgImWzx8FBDgjK7y7TUQ@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: containers-bounces-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org Errors-To: containers-bounces-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org To: KAMEZAWA Hiroyuki , Daisuke Nishimura , Balbir Singh Cc: Andrea Righi , containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Trond Myklebust , linux-mm-Bw31MaZKKs3YtjvyW6yDsg@public.gmane.org, Suleiman Souhlal , Andrew Morton , Vivek Goyal List-Id: containers.vger.kernel.org Introduce page_cgroup flags to keep track of file cache pages. Signed-off-by: KAMEZAWA Hiroyuki Signed-off-by: Andrea Righi --- include/linux/page_cgroup.h | 22 +++++++++++++++++++++- 1 files changed, 21 insertions(+), 1 deletions(-) diff --git a/include/linux/page_cgroup.h b/include/linux/page_cgroup.h index bf9a913..65247e4 100644 --- a/include/linux/page_cgroup.h +++ b/include/linux/page_cgroup.h @@ -40,7 +40,11 @@ enum { PCG_USED, /* this object is in use. */ PCG_ACCT_LRU, /* page has been accounted for */ /* for cache-status accounting */ - PCG_FILE_MAPPED, + PCG_FILE_MAPPED, /* page is accounted as file rss*/ + PCG_FILE_DIRTY, /* page is dirty */ + PCG_FILE_WRITEBACK, /* page is being written back to disk */ + PCG_FILE_WRITEBACK_TEMP, /* page is used as temporary buffer for FUSE */ + PCG_FILE_UNSTABLE_NFS, /* NFS page not yet committed to the server */ }; #define TESTPCGFLAG(uname, lname) \ @@ -83,6 +87,22 @@ TESTPCGFLAG(FileMapped, FILE_MAPPED) SETPCGFLAG(FileMapped, FILE_MAPPED) CLEARPCGFLAG(FileMapped, FILE_MAPPED) +TESTPCGFLAG(FileDirty, FILE_DIRTY) +SETPCGFLAG(FileDirty, FILE_DIRTY) +CLEARPCGFLAG(FileDirty, FILE_DIRTY) + +TESTPCGFLAG(FileWriteback, FILE_WRITEBACK) +SETPCGFLAG(FileWriteback, FILE_WRITEBACK) +CLEARPCGFLAG(FileWriteback, FILE_WRITEBACK) + +TESTPCGFLAG(FileWritebackTemp, FILE_WRITEBACK_TEMP) +SETPCGFLAG(FileWritebackTemp, FILE_WRITEBACK_TEMP) +CLEARPCGFLAG(FileWritebackTemp, FILE_WRITEBACK_TEMP) + +TESTPCGFLAG(FileUnstableNFS, FILE_UNSTABLE_NFS) +SETPCGFLAG(FileUnstableNFS, FILE_UNSTABLE_NFS) +CLEARPCGFLAG(FileUnstableNFS, FILE_UNSTABLE_NFS) + static inline int page_cgroup_nid(struct page_cgroup *pc) { return page_to_nid(pc->page); -- 1.6.3.3