linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] mm, vmscan: Don't turn on cache_trim_mode at the highest scan priority
@ 2024-02-08  6:18 Byungchul Park
  2024-02-16  5:55 ` Yu Zhao
  0 siblings, 1 reply; 6+ messages in thread
From: Byungchul Park @ 2024-02-08  6:18 UTC (permalink / raw)
  To: akpm; +Cc: linux-kernel, linux-mm, kernel_team

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.

Signed-off-by: Byungchul Park <byungchul@sk.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 &&
+	    !(sc->may_deactivate & DEACTIVATE_FILE))
 		sc->cache_trim_mode = 1;
 	else
 		sc->cache_trim_mode = 0;
-- 
2.17.1



^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-02-22  3:28 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-02-08  6:18 [PATCH] mm, vmscan: Don't turn on cache_trim_mode at the highest scan priority Byungchul Park
2024-02-16  5:55 ` Yu Zhao
2024-02-16  7:24   ` Byungchul Park
2024-02-17  5:11     ` Yu Zhao
2024-02-21 22:30       ` Andrew Morton
2024-02-22  3:27         ` Byungchul Park

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox