| From: Shakeel Butt <shakeelb@google.com> |
| Subject: memcg: rearrange code |
| Date: Wed, 7 Sep 2022 04:35:36 +0000 |
| |
| This is a preparatory patch for easing the review of the follow up patch |
| which will reduce the memory overhead of memory cgroups. |
| |
| Link: https://lkml.kernel.org/r/20220907043537.3457014-3-shakeelb@google.com |
| Signed-off-by: Shakeel Butt <shakeelb@google.com> |
| Acked-by: Roman Gushchin <roman.gushchin@linux.dev> |
| Cc: Johannes Weiner <hannes@cmpxchg.org> |
| Cc: Michal Hocko <mhocko@kernel.org> |
| Cc: Muchun Song <songmuchun@bytedance.com> |
| Signed-off-by: Andrew Morton <akpm@linux-foundation.org> |
| --- |
| |
| mm/memcontrol.c | 46 +++++++++++++++++++++++----------------------- |
| 1 file changed, 23 insertions(+), 23 deletions(-) |
| |
| --- a/mm/memcontrol.c~memcg-rearrange-code |
| +++ a/mm/memcontrol.c |
| @@ -669,6 +669,29 @@ static void flush_memcg_stats_dwork(stru |
| queue_delayed_work(system_unbound_wq, &stats_flush_dwork, FLUSH_TIME); |
| } |
| |
| +/* Subset of vm_event_item to report for memcg event stats */ |
| +static const unsigned int memcg_vm_event_stat[] = { |
| + PGSCAN_KSWAPD, |
| + PGSCAN_DIRECT, |
| + PGSTEAL_KSWAPD, |
| + PGSTEAL_DIRECT, |
| + PGFAULT, |
| + PGMAJFAULT, |
| + PGREFILL, |
| + PGACTIVATE, |
| + PGDEACTIVATE, |
| + PGLAZYFREE, |
| + PGLAZYFREED, |
| +#if defined(CONFIG_MEMCG_KMEM) && defined(CONFIG_ZSWAP) |
| + ZSWPIN, |
| + ZSWPOUT, |
| +#endif |
| +#ifdef CONFIG_TRANSPARENT_HUGEPAGE |
| + THP_FAULT_ALLOC, |
| + THP_COLLAPSE_ALLOC, |
| +#endif |
| +}; |
| + |
| struct memcg_vmstats_percpu { |
| /* Local (CPU and cgroup) page state & events */ |
| long state[MEMCG_NR_STAT]; |
| @@ -1501,29 +1524,6 @@ static inline unsigned long memcg_page_s |
| return memcg_page_state(memcg, item) * memcg_page_state_unit(item); |
| } |
| |
| -/* Subset of vm_event_item to report for memcg event stats */ |
| -static const unsigned int memcg_vm_event_stat[] = { |
| - PGSCAN_KSWAPD, |
| - PGSCAN_DIRECT, |
| - PGSTEAL_KSWAPD, |
| - PGSTEAL_DIRECT, |
| - PGFAULT, |
| - PGMAJFAULT, |
| - PGREFILL, |
| - PGACTIVATE, |
| - PGDEACTIVATE, |
| - PGLAZYFREE, |
| - PGLAZYFREED, |
| -#if defined(CONFIG_MEMCG_KMEM) && defined(CONFIG_ZSWAP) |
| - ZSWPIN, |
| - ZSWPOUT, |
| -#endif |
| -#ifdef CONFIG_TRANSPARENT_HUGEPAGE |
| - THP_FAULT_ALLOC, |
| - THP_COLLAPSE_ALLOC, |
| -#endif |
| -}; |
| - |
| static void memory_stat_format(struct mem_cgroup *memcg, char *buf, int bufsize) |
| { |
| struct seq_buf s; |
| _ |