From: Baoquan He <baoquan.he@linux.dev>
To: Barry Song <baohua@kernel.org>
Cc: akpm@linux-foundation.org, linux-mm@kvack.org,
axelrasmussen@google.com, baolin.wang@linux.alibaba.com,
chenridong@xiaomi.com, david@kernel.org, hannes@cmpxchg.org,
kasong@tencent.com, lianux.mm@gmail.com,
linux-kernel@vger.kernel.org, ljs@kernel.org,
lyugaofei@xiaomi.com, mhocko@kernel.org, qi.zheng@linux.dev,
shakeel.butt@linux.dev, stevensd@chromium.org,
wangzicheng@honor.com, weixugc@google.com, yuanchu@google.com
Subject: Re: [PATCH 1/3] mm/mglru: improve readability of isolate_folios()
Date: Fri, 28 Aug 2026 13:27:38 +0800 [thread overview]
Message-ID: <apEcSl6dNJ6wsOWs@MiWiFi-R3L-srv> (raw)
In-Reply-To: <CAGsJ_4w_c2mf6X7PXHc7W4+jQ57un+eewfh9K1dXha29Hw12rg@mail.gmail.com>
On 08/28/26 at 11:22am, Barry Song wrote:
> On Fri, Aug 28, 2026 at 11:15 AM Baoquan He <baoquan.he@linux.dev> wrote:
> >
> > On 08/20/26 at 12:56pm, Barry Song (Xiaomi) wrote:
> > > From: Ridong Chen <chenridong@xiaomi.com>
> > >
> > > The for_each_evictable_type() loop in isolate_folios()
> > > is misleading: it does not actually iterate over each
> > > evictable type. Instead, get_type_to_scan() selects the
> > > type to scan, while the iterator `i` merely bounds the
> > > number of attempts.
> > >
> > > Make the fallback behavior explicit in the code and remove the
> > > opaque for_each_evictable_type(i, swappiness).
> > >
> > > Signed-off-by: Ridong Chen <chenridong@xiaomi.com>
> > > Co-developed-by: Barry Song (Xiaomi) <baohua@kernel.org>
> > > Signed-off-by: Barry Song (Xiaomi) <baohua@kernel.org>
> > > ---
> > > mm/vmscan.c | 46 ++++++++++++++++++++++++++--------------------
> > > 1 file changed, 26 insertions(+), 20 deletions(-)
> >
> > The subject doens't reflect the truth. This patch changes the behaviour,
> > but not improve readability of isolate_folios() only.
> >
> > I also noticed the confusion of isolate_folios() implementation, and made
> > a patch to only change the local variable and added code comment to
> > explain it in my local branch. Surely refactorying is also good.
> >
> > + * Scan at most one type per evictable type (anon/file), starting with
> > + * the type get_type_to_scan() picked as statistically colder.
> > + *
> > + * After a scan:
> > + * - isolated > 0: got folios, record the type and return.
> > + * - scanned == 0: the type is empty; fall back to the other type.
> > + * - otherwise: the type has folios but all were hot (or lost an
> > + * isolate race); retry the same type rather than
> > + * switch, so positive_ctrl_err()'s refault
> > + * statistics stay unbiased.
> > + */
> >
> > While in Ridong's patch, the 3rd case disappeared. It doesn't rescan with
> > the original type as the old code is doing, but return directly.
> >
>
> right, the 3rd case comes back in patch 3/3:
> https://lore.kernel.org/linux-mm/20260820045603.68809-4-baohua@kernel.org/
>
> so i guess we can rename patch 1/3?
Both is fine as long as thing is correct and clear, thanks.
next prev parent reply other threads:[~2026-08-28 5:28 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-20 4:56 [PATCH 0/3] mm/mglru: clean up isolate_folios and scan_folios for readability and clarity Barry Song (Xiaomi)
2026-08-20 4:56 ` [PATCH 1/3] mm/mglru: improve readability of isolate_folios() Barry Song (Xiaomi)
2026-08-20 9:02 ` Baolin Wang
2026-08-20 9:22 ` Kairui Song
2026-08-28 3:15 ` Baoquan He
2026-08-28 3:22 ` Barry Song
2026-08-28 5:27 ` Baoquan He [this message]
2026-08-20 4:56 ` [PATCH 2/3] mm/mglru: improve scan_folios() exhaustion detection Barry Song (Xiaomi)
2026-08-21 1:44 ` Ridong Chen
2026-08-24 6:47 ` Baolin Wang
2026-08-25 21:44 ` Barry Song
2026-08-20 4:56 ` [PATCH 3/3] mm/mglru: retry the same type once if isolation fails due to races Barry Song (Xiaomi)
2026-08-21 1:45 ` Ridong Chen
2026-08-24 7:14 ` Baolin Wang
2026-08-20 7:56 ` [PATCH 0/3] mm/mglru: clean up isolate_folios and scan_folios for readability and clarity Lian Wang (ProcessMission)
2026-08-24 7:22 ` Baolin Wang
2026-08-24 11:05 ` Kairui Song
2026-08-25 9:06 ` Baolin Wang
2026-08-25 18:09 ` Kairui Song
2026-08-25 21:11 ` Barry Song
2026-08-27 6:21 ` Baolin Wang
2026-08-27 7:25 ` Kairui Song
2026-08-29 6:05 ` Barry 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=apEcSl6dNJ6wsOWs@MiWiFi-R3L-srv \
--to=baoquan.he@linux.dev \
--cc=akpm@linux-foundation.org \
--cc=axelrasmussen@google.com \
--cc=baohua@kernel.org \
--cc=baolin.wang@linux.alibaba.com \
--cc=chenridong@xiaomi.com \
--cc=david@kernel.org \
--cc=hannes@cmpxchg.org \
--cc=kasong@tencent.com \
--cc=lianux.mm@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=ljs@kernel.org \
--cc=lyugaofei@xiaomi.com \
--cc=mhocko@kernel.org \
--cc=qi.zheng@linux.dev \
--cc=shakeel.butt@linux.dev \
--cc=stevensd@chromium.org \
--cc=wangzicheng@honor.com \
--cc=weixugc@google.com \
--cc=yuanchu@google.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 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.