[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1268609202-15581-3-git-send-email-arighi@develer.com>
Date: Mon, 15 Mar 2010 00:26:39 +0100
From: Andrea Righi <arighi@...eler.com>
To: KAMEZAWA Hiroyuki <kamezawa.hiroyu@...fujitsu.com>,
Daisuke Nishimura <nishimura@....nes.nec.co.jp>,
Balbir Singh <balbir@...ux.vnet.ibm.com>
Cc: Vivek Goyal <vgoyal@...hat.com>,
Peter Zijlstra <peterz@...radead.org>,
Trond Myklebust <trond.myklebust@....uio.no>,
Suleiman Souhlal <suleiman@...gle.com>,
Greg Thelen <gthelen@...gle.com>,
"Kirill A. Shutemov" <kirill@...temov.name>,
Andrew Morton <akpm@...ux-foundation.org>,
containers@...ts.linux-foundation.org,
linux-kernel@...r.kernel.org, linux-mm@...ck.org,
Andrea Righi <arighi@...eler.com>
Subject: [PATCH -mmotm 2/5] memcg: dirty memory documentation
Document cgroup dirty memory interfaces and statistics.
Signed-off-by: Andrea Righi <arighi@...eler.com>
---
Documentation/cgroups/memory.txt | 36 ++++++++++++++++++++++++++++++++++++
1 files changed, 36 insertions(+), 0 deletions(-)
diff --git a/Documentation/cgroups/memory.txt b/Documentation/cgroups/memory.txt
index 49f86f3..38ca499 100644
--- a/Documentation/cgroups/memory.txt
+++ b/Documentation/cgroups/memory.txt
@@ -310,6 +310,11 @@ cache - # of bytes of page cache memory.
rss - # of bytes of anonymous and swap cache memory.
pgpgin - # of pages paged in (equivalent to # of charging events).
pgpgout - # of pages paged out (equivalent to # of uncharging events).
+filedirty - # of pages that are waiting to get written back to the disk.
+writeback - # of pages that are actively being written back to the disk.
+writeback_tmp - # of pages used by FUSE for temporary writeback buffers.
+nfs - # of NFS pages sent to the server, but not yet committed to
+ the actual storage.
active_anon - # of bytes of anonymous and swap cache memory on active
lru list.
inactive_anon - # of bytes of anonymous memory and swap cache memory on
@@ -345,6 +350,37 @@ Note:
- a cgroup which uses hierarchy and it has child cgroup.
- a cgroup which uses hierarchy and not the root of hierarchy.
+5.4 dirty memory
+
+ Control the maximum amount of dirty pages a cgroup can have at any given time.
+
+ Limiting dirty memory is like fixing the max amount of dirty (hard to
+ reclaim) page cache used by any cgroup. So, in case of multiple cgroup writers,
+ they will not be able to consume more than their designated share of dirty
+ pages and will be forced to perform write-out if they cross that limit.
+
+ The interface is equivalent to the procfs interface: /proc/sys/vm/dirty_*.
+ It is possible to configure a limit to trigger both a direct writeback or a
+ background writeback performed by per-bdi flusher threads.
+
+ Per-cgroup dirty limits can be set using the following files in the cgroupfs:
+
+ - memory.dirty_ratio: contains, as a percentage of cgroup memory, the
+ amount of dirty memory at which a process which is generating disk writes
+ inside the cgroup will start itself writing out dirty data.
+
+ - memory.dirty_bytes: the amount of dirty memory of the cgroup (expressed in
+ bytes) at which a process generating disk writes will start itself writing
+ out dirty data.
+
+ - memory.dirty_background_ratio: contains, as a percentage of the cgroup
+ memory, the amount of dirty memory at which background writeback kernel
+ threads will start writing out dirty data.
+
+ - memory.dirty_background_bytes: the amount of dirty memory of the cgroup (in
+ bytes) at which background writeback kernel threads will start writing out
+ dirty data.
+
6. Hierarchy support
--
1.6.3.3
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists