[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAOUHufYUC-oWePfqbbmm15Ue9QLfPg1G2nhXn6iSX_A460O6Uw@mail.gmail.com>
Date: Fri, 16 Feb 2024 00:55:17 -0500
From: Yu Zhao <yuzhao@...gle.com>
To: Byungchul Park <byungchul@...com>
Cc: akpm@...ux-foundation.org, linux-kernel@...r.kernel.org,
linux-mm@...ck.org, kernel_team@...ynix.com
Subject: Re: [PATCH] mm, vmscan: Don't turn on cache_trim_mode at the highest
scan priority
On Thu, Feb 8, 2024 at 1:18 AM Byungchul Park <byungchul@...com> wrote:
>
> With cache_trim_mode on, reclaim logic doesn't bother reclaiming anon
> pages. However, it should be more careful to turn on the mode because
> it's going to prevent anon pages from reclaimed even if there are huge
> ammount of anon pages that are very cold so should be reclaimed. Even
> worse, that can lead kswapd_failures to be MAX_RECLAIM_RETRIES and stop
> until direct reclaim eventually works to resume kswapd.
Is a theory or something observed in the real world? If it's the
former, would this change risk breaking existing use cases? It's the
latter, where are the performance numbers to show what it looks like
before and after this patch?
> Signed-off-by: Byungchul Park <byungchul@...com>
> ---
> mm/vmscan.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/mm/vmscan.c b/mm/vmscan.c
> index bba207f41b14..25b55fdc0d41 100644
> --- a/mm/vmscan.c
> +++ b/mm/vmscan.c
> @@ -2268,7 +2268,8 @@ static void prepare_scan_control(pg_data_t *pgdat, struct scan_control *sc)
> * anonymous pages.
> */
> file = lruvec_page_state(target_lruvec, NR_INACTIVE_FILE);
> - if (file >> sc->priority && !(sc->may_deactivate & DEACTIVATE_FILE))
> + if (sc->priority != 1 && file >> sc->priority &
Why 1?
> + !(sc->may_deactivate & DEACTIVATE_FILE))
> sc->cache_trim_mode = 1;
> else
> sc->cache_trim_mode = 0;
Powered by blists - more mailing lists