All of lore.kernel.org
 help / color / mirror / Atom feed
From: 江志国 <justinjiang@vivo.com>
To: Yu Zhao <yuzhao@google.com>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	"linux-mm@kvack.org" <linux-mm@kvack.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	opensource.kernel <opensource.kernel@vivo.com>
Subject: 答复: [PATCH] mm: mglru: fix add unevictable folio to lruvec->lists
Date: Fri, 15 Sep 2023 03:37:53 +0000	[thread overview]
Message-ID: <JH0PR06MB684995142435A2A1B98D0032C7F6A@JH0PR06MB6849.apcprd06.prod.outlook.com> (raw)
In-Reply-To: <CAOUHufaaUQyNNniHpF06-i3YQ+f-5L5QWj5vRK2_PXyewEsOyg@mail.gmail.com>

Thanks!

-----邮件原件-----
发件人: Yu Zhao <yuzhao@google.com>
发送时间: 2023年9月15日 11:34
收件人: 江志国 <justinjiang@vivo.com>
抄送: Andrew Morton <akpm@linux-foundation.org>; linux-mm@kvack.org; linux-kernel@vger.kernel.org; opensource.kernel <opensource.kernel@vivo.com>
主题: Re: [PATCH] mm: mglru: fix add unevictable folio to lruvec->lists

On Thu, Sep 14, 2023 at 9:33 PM 江志国 <justinjiang@vivo.com> wrote:
>
> Hi Yu Zhao:
>
> Thank you for your reply and sharing.

Sorry, wrong link. This is the right one:

https://www.kernel.org/doc/html/latest/mm/unevictable-lru.html#the-unevictable-lru-folio-list

> On Thu, Sep 14, 2023 at 9:19 PM 江志国 <justinjiang@vivo.com> wrote:
> >
> > Hi Yu Zhao:
> >
> > How is the unevictable folio managed in kernel?
>
> https://www/.
> kernel.org%2Fdoc%2FDocumentation%2Fvm%2Funevictable-lru.txt&data=05%7C
> 01%7Cjustinjiang%40vivo.com%7Ca3ea4d61046d45c2b47608dbb59cc224%7C923e4
> 2dc48d54cbeb5821a797a6412ed%7C0%7C0%7C638303457153860664%7CUnknown%7CT
> WFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI
> 6Mn0%3D%7C3000%7C%7C%7C&sdata=MSl%2FThW4E%2FCevOTWEa1U7%2BrUZcho1bqWTH
> Pa5QUx6O0%3D&reserved=0
>
> > On Thu, Sep 14, 2023 at 8:08 AM Zhiguo Jiang <justinjiang@vivo.com> wrote:
> > >
> > > The unevictable folio is not supported to add to lruvec->lists in
> > > lruvec_add_folio().
> > >
> > > So use lruvec_add_folio_tail() instead of lruvec_add_folio() to
> > > add unevictable folio to lruvec->lists in sort_folio().
> > >
> > > Signed-off-by: Zhiguo Jiang <justinjiang@vivo.com>
> > > ---
> > >  mm/vmscan.c | 2 +-
> > >  1 file changed, 1 insertion(+), 1 deletion(-)  mode change 100644
> > > =>
> > > 100755 mm/vmscan.c
> > >
> > > diff --git a/mm/vmscan.c b/mm/vmscan.c index
> > > 661615fa709b..a15e45632034
> > > --- a/mm/vmscan.c
> > > +++ b/mm/vmscan.c
> > > @@ -4237,7 +4237,7 @@ static bool sort_folio(struct lruvec *lruvec, struct folio *folio, struct scan_c
> > >                 success = lru_gen_del_folio(lruvec, folio, true);
> > >                 VM_WARN_ON_ONCE_FOLIO(!success, folio);
> > >                 folio_set_unevictable(folio);
> > > -               lruvec_add_folio(lruvec, folio);
> > > +               lruvec_add_folio_tail(lruvec, folio);
> > >                 __count_vm_events(UNEVICTABLE_PGCULLED, delta);
> > >                 return true;
> > >         }
> >
> > NAK.
> >
> > lruvec_add_folio()
> > {
> >         ...
> >
> >         if (lru != LRU_UNEVICTABLE)
> >                 list_add(&folio->lru, &lruvec->lists[lru]); }
> >
> > lruvec_add_folio_tail()
> > {
> >         ...
> >
> >         /* This is not expected to be used on LRU_UNEVICTABLE */
> >         list_add_tail(&folio->lru, &lruvec->lists[lru]); }
> >
> > struct page {
> >         ...
> >                         union {
> >                                 struct list_head lru;
> >
> >                                 /* Or, for the Unevictable "LRU list" slot */
> >                                 struct {
> >         ...
> > }

      reply	other threads:[~2023-09-15  3:38 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-14 14:08 [PATCH] mm: mglru: fix add unevictable folio to lruvec->lists Zhiguo Jiang
2023-09-14 17:46 ` Yu Zhao
2023-09-15  3:19   ` 答复: " 江志国
2023-09-15  3:25     ` Yu Zhao
2023-09-15  3:33       ` 答复: " 江志国
2023-09-15  3:34         ` Yu Zhao
2023-09-15  3:37           ` 江志国 [this message]

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=JH0PR06MB684995142435A2A1B98D0032C7F6A@JH0PR06MB6849.apcprd06.prod.outlook.com \
    --to=justinjiang@vivo.com \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=opensource.kernel@vivo.com \
    --cc=yuzhao@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.