From: Michal Hocko <mhocko@suse.com>
To: Song Hu <husong@kylinos.cn>
Cc: akpm@linux-foundation.org, audra@redhat.com,
bingfangguo@tencent.com, cgroups@vger.kernel.org,
hannes@cmpxchg.org, joshua.hahnjy@gmail.com,
linux-kernel@vger.kernel.org, linux-mm@kvack.org,
muchun.song@linux.dev, roman.gushchin@linux.dev,
shakeel.butt@linux.dev, zhuhui@kylinos.cn
Subject: Re: [PATCH] mm: memcg: flush empty per-cpu stock slots on memcg offlining
Date: Mon, 17 Aug 2026 15:29:19 +0200 [thread overview]
Message-ID: <aoMMr6kEX7pW1dSF@tiehlicka> (raw)
In-Reply-To: <20260817131221.44761-1-husong@kylinos.cn>
On Mon 17-08-26 21:12:21, Song Hu wrote:
> On Mon 17-08-26, Michal Hocko wrote:
> > Is there any specific reason why the memcg stays in the cache slot
> > without any pages?
>
> consume_stock() doesn't release the slot when nr_pages hits zero. It
> is kept for the next charge of the same task and only gets displaced
> by a charge under a different memcg or by CPU hotplug. The problem is
> that the offlining drain skips empty slots, so the css reference they
> hold is never dropped unless something unrelated displaces them.
This doesn't answer my question, really, does it? Is there any good
reason for this implementation? Why do we need to drop references
remotely when we can do so when the last cached charge is consumed?
--
Michal Hocko
SUSE Labs
next prev parent reply other threads:[~2026-08-17 13:29 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-17 2:59 [PATCH] mm: memcg: flush empty per-cpu stock slots on memcg offlining Song Hu
2026-08-17 3:15 ` Matthew Wilcox
2026-08-17 12:59 ` Song Hu
2026-08-17 4:30 ` Joshua Hahn
2026-08-17 13:02 ` Song Hu
2026-08-17 8:31 ` Michal Hocko
2026-08-17 13:12 ` Song Hu
2026-08-17 13:29 ` Michal Hocko [this message]
2026-08-17 13:58 ` Song Hu
2026-08-17 14:10 ` Michal Hocko
2026-08-17 16:11 ` Shakeel Butt
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=aoMMr6kEX7pW1dSF@tiehlicka \
--to=mhocko@suse.com \
--cc=akpm@linux-foundation.org \
--cc=audra@redhat.com \
--cc=bingfangguo@tencent.com \
--cc=cgroups@vger.kernel.org \
--cc=hannes@cmpxchg.org \
--cc=husong@kylinos.cn \
--cc=joshua.hahnjy@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=muchun.song@linux.dev \
--cc=roman.gushchin@linux.dev \
--cc=shakeel.butt@linux.dev \
--cc=zhuhui@kylinos.cn \
/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