linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: "Lorenzo Stoakes (Oracle)" <ljs@kernel.org>
To: Vlastimil Babka <vbabka@suse.com>
Cc: Axel Rasmussen <axelrasmussen@google.com>,
	 Michal Hocko <mhocko@suse.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	 Shakeel Butt <shakeel.butt@linux.dev>,
	lsf-pc@lists.linux-foundation.org,
	 Johannes Weiner <hannes@cmpxchg.org>,
	David Hildenbrand <david@kernel.org>,
	 Qi Zheng <zhengqi.arch@bytedance.com>,
	Chen Ridong <chenridong@huaweicloud.com>,
	 Emil Tsalapatis <emil@etsalapatis.com>,
	Alexei Starovoitov <ast@kernel.org>,
	 Yuanchu Xie <yuanchu@google.com>, Wei Xu <weixugc@google.com>,
	Kairui Song <ryncsn@gmail.com>,
	 Matthew Wilcox <willy@infradead.org>,
	Nhat Pham <nphamcs@gmail.com>, Gregory Price <gourry@gourry.net>,
	 Barry Song <21cnbao@gmail.com>,
	David Stevens <stevensd@google.com>,
	 Vernon Yang <vernon2gm@gmail.com>,
	David Rientjes <rientjes@google.com>,
	 Kalesh Singh <kaleshsingh@google.com>,
	wangzicheng <wangzicheng@honor.com>,
	 "T . J . Mercier" <tjmercier@google.com>,
	Baolin Wang <baolin.wang@linux.alibaba.com>,
	 Suren Baghdasaryan <surenb@google.com>,
	Meta kernel team <kernel-team@meta.com>,
	bpf@vger.kernel.org,  linux-mm@kvack.org,
	linux-kernel@vger.kernel.org, Tal Zussman <tz2294@columbia.edu>
Subject: Re: [Lsf-pc] [LSF/MM/BPF TOPIC] Towards Unified and Extensible Memory Reclaim (reclaim_ext)
Date: Fri, 27 Mar 2026 09:29:33 +0000	[thread overview]
Message-ID: <bd7099a1-aa15-4c58-875e-1e00624a57ea@lucifer.local> (raw)
In-Reply-To: <8406d210-4f68-4919-b791-c03c310a8385@suse.com>

On Fri, Mar 27, 2026 at 09:07:55AM +0100, Vlastimil Babka wrote:
> On 3/26/26 21:02, Axel Rasmussen via Lsf-pc wrote:
> > On Thu, Mar 26, 2026 at 1:02 AM Lorenzo Stoakes (Oracle) <ljs@kernel.org> wrote:
> >>
> >> On Thu, Mar 26, 2026 at 08:03:34AM +0100, Michal Hocko wrote:
> >> > On Wed 25-03-26 19:05:47, Andrew Morton wrote:
> >> > > On Wed, 25 Mar 2026 14:06:37 -0700 Shakeel Butt <shakeel.butt@linux.dev> wrote:
> >> > >
> >> > > > We should unify both algorithms into a single code path.
> >> > >
> >> > > I'm here to ask the questions which others fear will sound dumb.
> >> >
> >> > Not dumb at all and recently discussed here https://lore.kernel.org/all/CAMgjq7AkYOtUL2HuZjBu5dJw=RTL7W2L1+zVv=SCOyHKYwc3AA@mail.gmail.com/T/#u
> >> >
> >> > > Is it indeed the plan to maintain both implementations?  I thought the
> >> > > long-term ambition was to knock MGLRU into shape and to drop the legacy LRU?
> >
> > I think one thing we all agree on at least is, long term, there isn't
> > really a good argument for having > 1 LRU implementation. E.g., we
> > don't believe there are just irreconcilable differences, where one
> > impl is better for some workloads, and another is better for others,
> > and there is no way the two can be converged.
> >
> > On that basis, I would be hesitant to add some complex abstraction
> > layer / reclaim_ops to facilitate having two. It seems ilke it may
> > make things a bit cleaner in the short term, but long term might make
> > that end goal harder (because we'd add the task of cleaning up this
> > abstraction at some point).
> >
> > My preferred way would be more like:
> >
> > - Look for opportunities where we can deduplicate code, but without
> > adding abstraction (e.g., factor out common operations into common
> > functions both impls can call).
> > - Identify gaps where MGLRU performs worse than classic LRU, and close them.
>
> I'm afraid to identify these gaps we'd have to indeed split the MGLRU
> differences (as listed in Shakeel's proposal) in a way that they can be
> tried separately. I recall when MGLRU was proposed, we did argue that it's a
> combination of several things done differently and they should be introduced
> to the existing reclaim and validated separately. But the author refused to
> go that way.

It's unfortunate we were ok with going ahead with this anyway, I hope in the
current mm culture we'd simply say 'ok series doesn't land then'.

It feels like the 'merge by default' stuff has been both a process _and_ a
culture fail for a while honestly.

We are managing arguably _the_ most core part of the kernel (I know people will
argue on that but at it's at least up there :) and almost certainly _the_
subsystem with the most direct route to exploitable security bugs, but we've
been running it with some of the loosest merge criteria in the entire kernel.

It's patently insane.

Things are changing however!

Cheers, Lorenzo


  reply	other threads:[~2026-03-27  9:29 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-25 21:06 Shakeel Butt
2026-03-26  0:10 ` T.J. Mercier
2026-03-26  2:05 ` Andrew Morton
2026-03-26  7:03   ` Michal Hocko
2026-03-26  8:02     ` Lorenzo Stoakes (Oracle)
2026-03-26 12:37       ` Kairui Song
2026-03-26 13:13         ` Lorenzo Stoakes (Oracle)
2026-03-26 13:42           ` David Hildenbrand (Arm)
2026-03-26 13:45             ` Lorenzo Stoakes (Oracle)
2026-03-26 16:02         ` Lorenzo Stoakes (Oracle)
2026-03-26 20:02       ` Axel Rasmussen
2026-03-26 20:30         ` Gregory Price
2026-03-26 20:47           ` Axel Rasmussen
2026-03-27  3:43             ` Matthew Wilcox
2026-03-27 19:12               ` Tal Zussman
2026-03-27 19:43                 ` Gregory Price
2026-04-09  0:21                 ` John Hubbard
2026-03-27  8:07         ` [Lsf-pc] " Vlastimil Babka
2026-03-27  9:29           ` Lorenzo Stoakes (Oracle) [this message]
2026-03-26 12:06   ` Kairui Song
2026-03-26 12:31     ` Lorenzo Stoakes (Oracle)
2026-03-26 13:17       ` Kairui Song
2026-03-26 13:26         ` Lorenzo Stoakes (Oracle)
2026-03-26 13:21   ` Shakeel Butt
2026-03-26  7:12 ` Michal Hocko
2026-03-26 13:44   ` Shakeel Butt
2026-03-26 15:24     ` Michal Hocko
2026-03-26 18:21       ` Shakeel Butt
2026-03-26  7:18 ` wangzicheng
2026-03-26 11:43 ` Lorenzo Stoakes (Oracle)
2026-03-26 15:24   ` Gregory Price
2026-03-26 15:35     ` Lorenzo Stoakes (Oracle)
2026-03-26 16:32       ` Gregory Price
2026-03-26 16:40         ` Lorenzo Stoakes (Oracle)
2026-03-27 19:53       ` Johannes Weiner
2026-04-07 11:36         ` Lorenzo Stoakes
2026-04-07 16:56           ` Gregory Price
2026-04-07 17:30             ` Lorenzo Stoakes
2026-04-07 17:52               ` Johannes Weiner
2026-04-07 18:37               ` Gregory Price
2026-04-08  6:48                 ` Lorenzo Stoakes
2026-03-26 18:49   ` 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=bd7099a1-aa15-4c58-875e-1e00624a57ea@lucifer.local \
    --to=ljs@kernel.org \
    --cc=21cnbao@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=ast@kernel.org \
    --cc=axelrasmussen@google.com \
    --cc=baolin.wang@linux.alibaba.com \
    --cc=bpf@vger.kernel.org \
    --cc=chenridong@huaweicloud.com \
    --cc=david@kernel.org \
    --cc=emil@etsalapatis.com \
    --cc=gourry@gourry.net \
    --cc=hannes@cmpxchg.org \
    --cc=kaleshsingh@google.com \
    --cc=kernel-team@meta.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=lsf-pc@lists.linux-foundation.org \
    --cc=mhocko@suse.com \
    --cc=nphamcs@gmail.com \
    --cc=rientjes@google.com \
    --cc=ryncsn@gmail.com \
    --cc=shakeel.butt@linux.dev \
    --cc=stevensd@google.com \
    --cc=surenb@google.com \
    --cc=tjmercier@google.com \
    --cc=tz2294@columbia.edu \
    --cc=vbabka@suse.com \
    --cc=vernon2gm@gmail.com \
    --cc=wangzicheng@honor.com \
    --cc=weixugc@google.com \
    --cc=willy@infradead.org \
    --cc=yuanchu@google.com \
    --cc=zhengqi.arch@bytedance.com \
    /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