Commit a55e054c authored by Liu Shixin's avatar Liu Shixin
Browse files

memcg: expose swapcache stat for memcg v1

mainline inclusion
from mainline-v6.7-rc1
commit 72a14e821cba73f74aca4bc5f768d77dece8bdb2
category: feature
bugzilla: https://gitee.com/openeuler/kernel/issues/I8YTVI

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=72a14e821cba73f74aca4bc5f768d77dece8bdb2

--------------------------------

Patch series "Expose swapcache stat for memcg v1", v2.

Since commit b6038942 ("mm: memcg: add swapcache stat for memcg v2")
adds swapcache stat for the cgroup v2, it seems there is no reason to hide
it in memcg v1.  Conversely, with swapcached it is more accurate to
evaluate the available memory for memcg.

Link: https://lkml.kernel.org/r/20230915105845.3199656-1-liushixin2@huawei.com
Link: https://lkml.kernel.org/r/20230915105845.3199656-2-liushixin2@huawei.com


Signed-off-by: default avatarLiu Shixin <liushixin2@huawei.com>
Suggested-by: default avatarYosry Ahmed <yosryahmed@google.com>
Acked-by: default avatarTejun Heo <tj@kernel.org>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Kefeng Wang <wangkefeng.wang@huawei.com>
Cc: Michal Hocko <mhocko@kernel.org>
Cc: Michal Koutný <mkoutny@suse.com>
Cc: Zefan Li <lizefan.x@bytedance.com>
Cc: Roman Gushchin <roman.gushchin@linux.dev>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Shakeel Butt <shakeelb@google.com>
Cc: Muchun Song <songmuchun@bytedance.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLiu Shixin <liushixin2@huawei.com>
parent 8bf376b0
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -556,6 +556,7 @@ memory.stat file includes following statistics:
                    event happens each time a page is unaccounted from the
                    cgroup.
    swap            # of bytes of swap usage
    swapcached      # of bytes of swap cached in memory
    dirty           # of bytes that are waiting to get written back to the disk.
    writeback       # of bytes of file/anon cache that are queued for syncing to
                    disk.
+6 −0
Original line number Diff line number Diff line
@@ -4705,7 +4705,10 @@ static const unsigned int memcg1_stats[] = {
	NR_WRITEBACK,
	WORKINGSET_REFAULT_ANON,
	WORKINGSET_REFAULT_FILE,
#ifdef CONFIG_SWAP
	MEMCG_SWAP,
	NR_SWAPCACHE,
#endif
};

static const char *const memcg1_stat_names[] = {
@@ -4720,7 +4723,10 @@ static const char *const memcg1_stat_names[] = {
	"writeback",
	"workingset_refault_anon",
	"workingset_refault_file",
#ifdef CONFIG_SWAP
	"swap",
	"swapcached",
#endif
};

/* Universal VM events cgroup1 shows, original sort order */