• Y
    mm, memcg: add workingset_restore in memory.stat · a6f5576b
    Yafang Shao 提交于
    There's a new workingset counter introduced in commit 1899ad18 ("mm:
    workingset: tell cache transitions from workingset thrashing").  With
    the help of this counter we can know the workingset is transitioning or
    thrashing.  To leverage the benifit of this counter to memcg, we should
    introduce it into memory.stat.  Then we could know the workingset of the
    workload inside a memcg better.
    
    Bellow is the verification of this new counter in memory.stat.  Read a
    file into the memory and then read it again to make these pages be
    active.  The size of this file is 1G.  (memory.max is greater than file
    size) The counters in memory.stat will be
    
    	inactive_file 0
    	active_file 1073639424
    
    	workingset_refault 0
    	workingset_activate 0
    	workingset_restore 0
    	workingset_nodereclaim 0
    
    Trigger the memcg reclaim by setting a lower value to memory.high, and
    then some pages will be demoted into inactive list, and then some pages
    in the inactive list will be evicted into the storage.
    
    	inactive_file 498094080
    	active_file 310063104
    
    	workingset_refault 0
    	workingset_activate 0
    	workingset_restore 0
    	workingset_nodereclaim 0
    
    Then recover the memory.high and read the file into memory again.  As a
    result of it, the transitioning will occur.  Bellow is the result of
    this transitioning,
    
    	inactive_file 498094080
    	active_file 575397888
    
    	workingset_refault 64746
    	workingset_activate 64746
    	workingset_restore 64746
    	workingset_nodereclaim 0
    Signed-off-by: NYafang Shao <laoar.shao@gmail.com>
    Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
    Acked-by: NJohannes Weiner <hannes@cmpxchg.org>
    Acked-by: NMichal Hocko <mhocko@suse.com>
    Acked-by: NChris Down <chris@chrisdown.name>
    Cc: Peter Zijlstra (Intel) <peterz@infradead.org>
    Cc: Suren Baghdasaryan <surenb@google.com>
    Cc: Shakeel Butt <shakeelb@google.com>
    Link: http://lkml.kernel.org/r/20200504153522.11553-1-laoar.shao@gmail.comSigned-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
    a6f5576b
cgroup-v2.rst 95.8 KB