linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Roman Gushchin <guro@fb.com>
To: Dennis Zhou <dennis@kernel.org>
Cc: Tejun Heo <tj@kernel.org>, Christoph Lameter <cl@linux.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Vlastimil Babka <vbabka@suse.cz>, <linux-mm@kvack.org>,
	<linux-kernel@vger.kernel.org>, Roman Gushchin <guro@fb.com>
Subject: [PATCH v2 0/3] percpu: memcg memory accounting rework
Date: Wed, 2 Jun 2021 18:09:28 -0700	[thread overview]
Message-ID: <20210603010931.1472512-1-guro@fb.com> (raw)

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



             reply	other threads:[~2021-06-03  1:09 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-03  1:09 Roman Gushchin [this message]
2021-06-03  1:09 ` [PATCH v2 1/3] mm, memcg: mark cgroup_memory_nosocket, nokmem and noswap as __ro_after_init Roman Gushchin
2021-06-03  1:09 ` [PATCH v2 2/3] mm, memcg: introduce mem_cgroup_kmem_disabled() Roman Gushchin
2021-06-03  1:09 ` [PATCH v2 3/3] percpu: rework memcg accounting Roman Gushchin
2021-06-04 16:10 ` [PATCH v2 0/3] percpu: memcg memory accounting rework Dennis Zhou
2021-06-04 20:31   ` Andrew Morton
2021-06-05 21:02 ` Dennis Zhou

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210603010931.1472512-1-guro@fb.com \
    --to=guro@fb.com \
    --cc=akpm@linux-foundation.org \
    --cc=cl@linux.com \
    --cc=dennis@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=tj@kernel.org \
    --cc=vbabka@suse.cz \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox