docs: cgroup: mm: Document why inactive_X + active_X may not equal X
diff mbox series

Message ID 20191111144958.GA11914@chrisdown.name
State Accepted, archived
Commit 1603c8d1b1fbfbc20dcb363543b690de862849c0
Headers show
Series
  • docs: cgroup: mm: Document why inactive_X + active_X may not equal X
Related show

Commit Message

Chris Down Nov. 11, 2019, 2:49 p.m. UTC
This has confused a significant number of people using cgroups inside
Facebook, and some of those outside as well judging by posts like
this[0] (although it's not a problem unique to cgroup v2). If shmem
handling in particular becomes more coherent at some point in the future
-- although that seems unlikely now -- we can change the wording here.

[0]: https://unix.stackexchange.com/q/525092/10762

Signed-off-by: Chris Down <chris@chrisdown.name>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Tejun Heo <tj@kernel.org>
Cc: Roman Gushchin <guro@fb.com>
Cc: Michal Hocko <mhocko@kernel.org>
Cc: linux-kernel@vger.kernel.org
Cc: cgroups@vger.kernel.org
Cc: linux-mm@kvack.org
Cc: kernel-team@fb.com
---
 Documentation/admin-guide/cgroup-v2.rst | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

Comments

Michal Hocko Nov. 11, 2019, 2:53 p.m. UTC | #1
On Mon 11-11-19 14:49:58, Chris Down wrote:
> This has confused a significant number of people using cgroups inside
> Facebook, and some of those outside as well judging by posts like
> this[0] (although it's not a problem unique to cgroup v2). If shmem
> handling in particular becomes more coherent at some point in the future
> -- although that seems unlikely now -- we can change the wording here.
> 
> [0]: https://unix.stackexchange.com/q/525092/10762
> 
> Signed-off-by: Chris Down <chris@chrisdown.name>
> Cc: Andrew Morton <akpm@linux-foundation.org>
> Cc: Johannes Weiner <hannes@cmpxchg.org>
> Cc: Tejun Heo <tj@kernel.org>
> Cc: Roman Gushchin <guro@fb.com>
> Cc: Michal Hocko <mhocko@kernel.org>
> Cc: linux-kernel@vger.kernel.org
> Cc: cgroups@vger.kernel.org
> Cc: linux-mm@kvack.org
> Cc: kernel-team@fb.com

Acked-by: Michal Hocko <mhocko@suse.com>

> ---
>  Documentation/admin-guide/cgroup-v2.rst | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/Documentation/admin-guide/cgroup-v2.rst b/Documentation/admin-guide/cgroup-v2.rst
> index 0704552ed94f..0636bcb60b5a 100644
> --- a/Documentation/admin-guide/cgroup-v2.rst
> +++ b/Documentation/admin-guide/cgroup-v2.rst
> @@ -1289,7 +1289,12 @@ PAGE_SIZE multiple when read back.
>  	  inactive_anon, active_anon, inactive_file, active_file, unevictable
>  		Amount of memory, swap-backed and filesystem-backed,
>  		on the internal memory management lists used by the
> -		page reclaim algorithm
> +		page reclaim algorithm.
> +
> +		As these represent internal list state (eg. shmem pages are on anon
> +		memory management lists), inactive_foo + active_foo may not be equal to

and anon will move to file list after MADV_FREE.

> +		the value for the foo counter, since the foo counter is type-based, not
> +		list-based.
>  
>  	  slab_reclaimable
>  		Part of "slab" that might be reclaimed, such as
> -- 
> 2.24.0

Patch
diff mbox series

diff --git a/Documentation/admin-guide/cgroup-v2.rst b/Documentation/admin-guide/cgroup-v2.rst
index 0704552ed94f..0636bcb60b5a 100644
--- a/Documentation/admin-guide/cgroup-v2.rst
+++ b/Documentation/admin-guide/cgroup-v2.rst
@@ -1289,7 +1289,12 @@  PAGE_SIZE multiple when read back.
 	  inactive_anon, active_anon, inactive_file, active_file, unevictable
 		Amount of memory, swap-backed and filesystem-backed,
 		on the internal memory management lists used by the
-		page reclaim algorithm
+		page reclaim algorithm.
+
+		As these represent internal list state (eg. shmem pages are on anon
+		memory management lists), inactive_foo + active_foo may not be equal to
+		the value for the foo counter, since the foo counter is type-based, not
+		list-based.
 
 	  slab_reclaimable
 		Part of "slab" that might be reclaimed, such as