[PATCH v2 0/3] percpu: memcg memory accounting rework
From: Roman Gushchin
Date: Wed Jun 02 2021 - 21:09:45 EST
This patchset reworks memcg-based accounting of the percpu memory:
instead of using two types of chunks (memcg-aware and non-memcg-aware)
it treats all chunks as memcg-aware. An extra memory used for objcg
arrays will is compensated by a better chunks utilization, so the
total memory footprint should be the same or smaller.
First two patches are preparational changes and cleanups on the memcg side.
The third one is percpu accounting rework.
v2:
- make all chunks memcg-aware instead of on-demand objcg allocation, by Dennis
v1:
https://lkml.org/lkml/2021/5/11/1343
Roman Gushchin (3):
mm, memcg: mark cgroup_memory_nosocket, nokmem and noswap as
__ro_after_init
mm, memcg: introduce mem_cgroup_kmem_disabled()
percpu: rework memcg accounting
include/linux/memcontrol.h | 5 ++
mm/memcontrol.c | 11 ++-
mm/percpu-internal.h | 52 +--------------
mm/percpu-km.c | 5 +-
mm/percpu-stats.c | 46 +++++--------
mm/percpu-vm.c | 11 ++-
mm/percpu.c | 133 +++++++++++++++----------------------
7 files changed, 88 insertions(+), 175 deletions(-)
--
2.31.1