From: Roman Gushchin <roman.gushchin-fxUVXftIFDnyG1zEObXtfA@public.gmane.org>
To: Andrew Morton <akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>
Cc: Muchun Song <songmuchun-EC8Uxl6Npydl57MIdRCFDg@public.gmane.org>,
hannes-druUgvl0LCNAfugRpC6u6w@public.gmane.org,
mhocko-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org,
shakeelb-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org,
cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-mm-Bw31MaZKKs3YtjvyW6yDsg@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
duanxiongchun-EC8Uxl6Npydl57MIdRCFDg@public.gmane.org,
longman-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org
Subject: Re: [PATCH v5 00/11] Use obj_cgroup APIs to charge the LRU pages
Date: Mon, 30 May 2022 19:46:20 -0700 [thread overview]
Message-ID: <YpWBfPviP0TTSF4d@carbon> (raw)
In-Reply-To: <20220530141711.6cf70dcf200e28aa40407f6e-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>
On Mon, May 30, 2022 at 02:17:11PM -0700, Andrew Morton wrote:
> On Mon, 30 May 2022 15:49:08 +0800 Muchun Song <songmuchun-EC8Uxl6Npydl57MIdRCFDg@public.gmane.org> wrote:
>
> > This version is rebased on v5.18.
>
> Not a great choice of base, really. mm-stable or mm-unstable or
> linux-next or even linus-of-the-day are all much more up to date.
>
> Although the memcg reviewer tags are pretty thin, I was going to give
> it a run. But after fixing a bunch of conflicts I got about halfway
> through then gave up on a big snarl in get_obj_cgroup_from_current().
>
> > RFC v1: https://lore.kernel.org/all/20210330101531.82752-1-songmuchun-EC8Uxl6Npydl57MIdRCFDg@public.gmane.org/
>
> Surprising, that was over a year ago. Why has is taken so long?
It's partially my fault: I was thinking (and to some extent still are)
that using objcg is not the best choice long-term and was pushing on the
idea to used per-memcg lru vectors as intermediate objects instead.
But it looks like I underestimated the complexity and a potential overhead
of this solution.
The objcg-based approach can solve the problem right now and it shouldn't
bring any long-term issues. So I asked Muchun to revive the patchset.
Thanks!
WARNING: multiple messages have this Message-ID (diff)
From: Roman Gushchin <roman.gushchin@linux.dev>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: Muchun Song <songmuchun@bytedance.com>,
hannes@cmpxchg.org, mhocko@kernel.org, shakeelb@google.com,
cgroups@vger.kernel.org, linux-mm@kvack.org,
linux-kernel@vger.kernel.org, duanxiongchun@bytedance.com,
longman@redhat.com
Subject: Re: [PATCH v5 00/11] Use obj_cgroup APIs to charge the LRU pages
Date: Mon, 30 May 2022 19:46:20 -0700 [thread overview]
Message-ID: <YpWBfPviP0TTSF4d@carbon> (raw)
In-Reply-To: <20220530141711.6cf70dcf200e28aa40407f6e@linux-foundation.org>
On Mon, May 30, 2022 at 02:17:11PM -0700, Andrew Morton wrote:
> On Mon, 30 May 2022 15:49:08 +0800 Muchun Song <songmuchun@bytedance.com> wrote:
>
> > This version is rebased on v5.18.
>
> Not a great choice of base, really. mm-stable or mm-unstable or
> linux-next or even linus-of-the-day are all much more up to date.
>
> Although the memcg reviewer tags are pretty thin, I was going to give
> it a run. But after fixing a bunch of conflicts I got about halfway
> through then gave up on a big snarl in get_obj_cgroup_from_current().
>
> > RFC v1: https://lore.kernel.org/all/20210330101531.82752-1-songmuchun@bytedance.com/
>
> Surprising, that was over a year ago. Why has is taken so long?
It's partially my fault: I was thinking (and to some extent still are)
that using objcg is not the best choice long-term and was pushing on the
idea to used per-memcg lru vectors as intermediate objects instead.
But it looks like I underestimated the complexity and a potential overhead
of this solution.
The objcg-based approach can solve the problem right now and it shouldn't
bring any long-term issues. So I asked Muchun to revive the patchset.
Thanks!
next prev parent reply other threads:[~2022-05-31 2:46 UTC|newest]
Thread overview: 64+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-05-30 7:49 [PATCH v5 00/11] Use obj_cgroup APIs to charge the LRU pages Muchun Song
2022-05-30 7:49 ` Muchun Song
[not found] ` <20220530074919.46352-1-songmuchun-EC8Uxl6Npydl57MIdRCFDg@public.gmane.org>
2022-05-30 7:49 ` [PATCH v5 01/11] mm: memcontrol: remove dead code and comments Muchun Song
2022-05-30 7:49 ` Muchun Song
[not found] ` <20220530074919.46352-2-songmuchun-EC8Uxl6Npydl57MIdRCFDg@public.gmane.org>
2022-06-10 23:01 ` Roman Gushchin
2022-06-10 23:01 ` Roman Gushchin
2022-05-30 7:49 ` [PATCH v5 02/11] mm: rename unlock_page_lruvec{_irq, _irqrestore} to lruvec_unlock{_irq, _irqrestore} Muchun Song
2022-05-30 7:49 ` Muchun Song
[not found] ` <20220530074919.46352-3-songmuchun-EC8Uxl6Npydl57MIdRCFDg@public.gmane.org>
2022-06-10 23:08 ` Roman Gushchin
2022-06-10 23:08 ` Roman Gushchin
2022-05-30 7:49 ` [PATCH v5 04/11] mm: memcontrol: make lruvec lock safe when LRU pages are reparented Muchun Song
2022-05-30 7:49 ` Muchun Song
2022-05-30 7:49 ` [PATCH v5 05/11] mm: vmscan: rework move_pages_to_lru() Muchun Song
2022-05-30 7:49 ` Muchun Song
2022-05-30 7:49 ` [PATCH v5 06/11] mm: thp: make split queue lock safe when LRU pages are reparented Muchun Song
2022-05-30 7:49 ` Muchun Song
2022-05-30 7:49 ` [PATCH v5 07/11] mm: memcontrol: make all the callers of {folio,page}_memcg() safe Muchun Song
2022-05-30 7:49 ` Muchun Song
[not found] ` <20220530074919.46352-8-songmuchun-EC8Uxl6Npydl57MIdRCFDg@public.gmane.org>
2022-06-19 19:37 ` Roman Gushchin
2022-06-19 19:37 ` Roman Gushchin
2022-06-20 6:13 ` Muchun Song
2022-06-20 6:13 ` Muchun Song
2022-05-30 7:49 ` [PATCH v5 08/11] mm: memcontrol: introduce memcg_reparent_ops Muchun Song
2022-05-30 7:49 ` Muchun Song
[not found] ` <20220530074919.46352-9-songmuchun-EC8Uxl6Npydl57MIdRCFDg@public.gmane.org>
2022-06-19 19:47 ` Roman Gushchin
2022-06-19 19:47 ` Roman Gushchin
2022-06-20 7:14 ` Muchun Song
2022-05-30 7:49 ` [PATCH v5 09/11] mm: memcontrol: use obj_cgroup APIs to charge the LRU pages Muchun Song
2022-05-30 7:49 ` Muchun Song
[not found] ` <20220530074919.46352-10-songmuchun-EC8Uxl6Npydl57MIdRCFDg@public.gmane.org>
2022-06-01 17:34 ` Michal Koutný
2022-06-01 17:34 ` Michal Koutný
[not found] ` <20220601173438.GC2434-9OudH3eul5jcvrawFnH+a6VXKuFTiq87@public.gmane.org>
2022-06-02 4:14 ` Muchun Song
2022-06-02 4:14 ` Muchun Song
2022-06-19 20:32 ` Roman Gushchin
2022-06-19 20:32 ` Roman Gushchin
2022-05-30 7:49 ` [PATCH v5 11/11] mm: lru: use lruvec lock to serialize memcg changes Muchun Song
2022-05-30 7:49 ` Muchun Song
2022-06-09 2:43 ` [PATCH v5 00/11] Use obj_cgroup APIs to charge the LRU pages Muchun Song
2022-06-09 2:43 ` Muchun Song
2022-06-09 2:53 ` Roman Gushchin
2022-06-09 3:09 ` Muchun Song
2022-06-09 3:09 ` Muchun Song
2022-05-30 7:49 ` [PATCH v5 03/11] mm: memcontrol: prepare objcg API for non-kmem usage Muchun Song
[not found] ` <20220530074919.46352-4-songmuchun-EC8Uxl6Npydl57MIdRCFDg@public.gmane.org>
2022-06-01 17:34 ` Michal Koutný
2022-06-01 17:34 ` Michal Koutný
[not found] ` <20220601173434.GB16134-9OudH3eul5jcvrawFnH+a6VXKuFTiq87@public.gmane.org>
2022-06-01 18:33 ` Roman Gushchin
2022-06-01 18:33 ` Roman Gushchin
2022-06-02 10:48 ` Muchun Song
2022-06-02 10:48 ` Muchun Song
2022-06-02 3:06 ` Muchun Song
2022-06-02 3:06 ` Muchun Song
2022-06-10 23:13 ` Roman Gushchin
2022-06-10 23:13 ` Roman Gushchin
2022-05-30 7:49 ` [PATCH v5 10/11] mm: lru: add VM_BUG_ON_FOLIO to lru maintenance function Muchun Song
[not found] ` <20220530074919.46352-11-songmuchun-EC8Uxl6Npydl57MIdRCFDg@public.gmane.org>
2022-06-19 19:49 ` Roman Gushchin
2022-06-19 19:49 ` Roman Gushchin
2022-05-30 21:17 ` [PATCH v5 00/11] Use obj_cgroup APIs to charge the LRU pages Andrew Morton
[not found] ` <20220530141711.6cf70dcf200e28aa40407f6e-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>
2022-05-31 2:26 ` Muchun Song
2022-05-31 2:26 ` Muchun Song
2022-05-31 2:46 ` Roman Gushchin [this message]
2022-05-31 2:46 ` Roman Gushchin
2022-05-31 2:41 ` Waiman Long
[not found] ` <1ecec7cb-035c-a4aa-3918-1a00ba48c6f9-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2022-05-31 7:29 ` Muchun Song
2022-05-31 7:29 ` Muchun Song
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=YpWBfPviP0TTSF4d@carbon \
--to=roman.gushchin-fxuvxftifdnyg1zeobxtfa@public.gmane.org \
--cc=akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org \
--cc=cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=duanxiongchun-EC8Uxl6Npydl57MIdRCFDg@public.gmane.org \
--cc=hannes-druUgvl0LCNAfugRpC6u6w@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-mm-Bw31MaZKKs3YtjvyW6yDsg@public.gmane.org \
--cc=longman-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=mhocko-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=shakeelb-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org \
--cc=songmuchun-EC8Uxl6Npydl57MIdRCFDg@public.gmane.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.