Introduce page_cgroup flags to keep track of file cache pages. Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> Signed-off-by: Andrea Righi <arighi@xxxxxxxxxxx> --- 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 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>