From: Johannes Weiner <hannes@cmpxchg.org>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: Tejun Heo <tj@kernel.org>, Roman Gushchin <guro@fb.com>,
linux-mm@kvack.org, cgroups@vger.kernel.org,
linux-kernel@vger.kernel.org, kernel-team@fb.com
Subject: [PATCH 0/6] mm: memcontrol: clean up the LRU counts tracking
Date: Thu, 28 Feb 2019 11:30:14 -0500 [thread overview]
Message-ID: <20190228163020.24100-1-hannes@cmpxchg.org> (raw)
[ Resend #2: Sorry about the spam, I mixed up the header fields in
git-send-email and I don't know who did and didn't receive the
garbled previous attempt.
Resend #1: Rebased on top of the latest mmots. ]
The memcg LRU stats usage is currently a bit messy. Memcg has private
per-zone counters because reclaim needs zone granularity sometimes,
but we also have plenty of users that need to awkwardly sum them up to
node or memcg granularity. Meanwhile the canonical per-memcg vmstats
do not track the LRU counts (NR_INACTIVE_ANON etc.) as you'd expect.
This series enables LRU count tracking in the per-memcg vmstats array
such that lruvec_page_state() and memcg_page_state() work on the enum
node_stat_item items for the LRU counters. Then it converts all the
callers that don't specifically need per-zone numbers over to that.
include/linux/memcontrol.h | 28 ---------------
include/linux/mm_inline.h | 2 +-
include/linux/mmzone.h | 5 ---
mm/memcontrol.c | 85 +++++++++++++++++++++++++-------------------
mm/vmscan.c | 2 +-
mm/workingset.c | 5 +--
6 files changed, 54 insertions(+), 73 deletions(-)
next reply other threads:[~2019-02-28 16:30 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-02-28 16:30 Johannes Weiner [this message]
2019-02-28 16:30 ` [PATCH 1/6] mm: memcontrol: track LRU counts in the vmstats array Johannes Weiner
2019-02-28 16:30 ` [PATCH 2/6] mm: memcontrol: replace zone summing with lruvec_page_state() Johannes Weiner
2019-02-28 16:30 ` [PATCH 3/6] mm: memcontrol: replace node summing with memcg_page_state() Johannes Weiner
2019-03-22 1:54 ` Andrew Morton
2019-02-28 16:30 ` [PATCH 4/6] mm: memcontrol: push down mem_cgroup_node_nr_lru_pages() Johannes Weiner
2019-02-28 16:30 ` [PATCH 5/6] mm: memcontrol: push down mem_cgroup_nr_lru_pages() Johannes Weiner
2019-02-28 16:30 ` [PATCH 6/6] mm: memcontrol: quarantine the mem_cgroup_[node_]nr_lru_pages() API Johannes Weiner
2019-02-28 16:42 ` [PATCH 0/6] mm: memcontrol: clean up the LRU counts tracking Roman Gushchin
-- strict thread matches above, loose matches on Subject: below --
2019-02-15 18:14 Johannes Weiner
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=20190228163020.24100-1-hannes@cmpxchg.org \
--to=hannes@cmpxchg.org \
--cc=akpm@linux-foundation.org \
--cc=cgroups@vger.kernel.org \
--cc=guro@fb.com \
--cc=kernel-team@fb.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=tj@kernel.org \
/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