lkml.org 
[lkml]   [2010]   [Mar]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH -mmotm 3/5] page_cgroup: introduce file cache flags
    Date
    Introduce page_cgroup flags to keep track of file cache pages.

    Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
    Signed-off-by: Andrea Righi <arighi@develer.com>
    ---
    include/linux/page_cgroup.h | 26 ++++++++++++++++++++++++++
    1 files changed, 26 insertions(+), 0 deletions(-)

    diff --git a/include/linux/page_cgroup.h b/include/linux/page_cgroup.h
    index 0d2f92c..4e09c8c 100644
    --- a/include/linux/page_cgroup.h
    +++ b/include/linux/page_cgroup.h
    @@ -39,6 +39,11 @@ enum {
    PCG_CACHE, /* charged as cache */
    PCG_USED, /* this object is in use. */
    PCG_ACCT_LRU, /* page has been accounted for */
    + PCG_ACCT_FILE_MAPPED, /* page is accounted as file rss*/
    + PCG_ACCT_DIRTY, /* page is dirty */
    + PCG_ACCT_WRITEBACK, /* page is being written back to disk */
    + PCG_ACCT_WRITEBACK_TEMP, /* page is used as temporary buffer for FUSE */
    + PCG_ACCT_UNSTABLE_NFS, /* NFS page not yet committed to the server */
    };

    #define TESTPCGFLAG(uname, lname) \
    @@ -73,6 +78,27 @@ CLEARPCGFLAG(AcctLRU, ACCT_LRU)
    TESTPCGFLAG(AcctLRU, ACCT_LRU)
    TESTCLEARPCGFLAG(AcctLRU, ACCT_LRU)

    +/* File cache and dirty memory flags */
    +TESTPCGFLAG(FileMapped, ACCT_FILE_MAPPED)
    +SETPCGFLAG(FileMapped, ACCT_FILE_MAPPED)
    +CLEARPCGFLAG(FileMapped, ACCT_FILE_MAPPED)
    +
    +TESTPCGFLAG(Dirty, ACCT_DIRTY)
    +SETPCGFLAG(Dirty, ACCT_DIRTY)
    +CLEARPCGFLAG(Dirty, ACCT_DIRTY)
    +
    +TESTPCGFLAG(Writeback, ACCT_WRITEBACK)
    +SETPCGFLAG(Writeback, ACCT_WRITEBACK)
    +CLEARPCGFLAG(Writeback, ACCT_WRITEBACK)
    +
    +TESTPCGFLAG(WritebackTemp, ACCT_WRITEBACK_TEMP)
    +SETPCGFLAG(WritebackTemp, ACCT_WRITEBACK_TEMP)
    +CLEARPCGFLAG(WritebackTemp, ACCT_WRITEBACK_TEMP)
    +
    +TESTPCGFLAG(UnstableNFS, ACCT_UNSTABLE_NFS)
    +SETPCGFLAG(UnstableNFS, ACCT_UNSTABLE_NFS)
    +CLEARPCGFLAG(UnstableNFS, ACCT_UNSTABLE_NFS)
    +
    static inline int page_cgroup_nid(struct page_cgroup *pc)
    {
    return page_to_nid(pc->page);
    --
    1.6.3.3


    \
     
     \ /
      Last update: 2010-03-10 00:05    [W:0.025 / U:29.140 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site