Thank you both for the assistance and the patch. I'm afraid the problem remains with the patch applied, when exercising either the block buffer cache and the filesystem page cache. Is there anything I can do to try to pinpoint the problem? Tweaking some kernel vm.* parameters, perhaps? I wonder if others are able to reproduce the behaviour. (Sorry for top-posting - lousy Outlook Web Access!) -- Chris ________________________________________ From: Johannes Weiner <hannes@xxxxxxxxxxx> Sent: Monday, 27 January 2020 23:06 To: Michal Hocko Cc: Chris Edwards; linux-mm@xxxxxxxxx Subject: Re: Paging out when free memory is low but not exhausted (and available memory remains high) Just to confirm, Chris, would you be able to test whether the following patch fixes the problem you are seeing? diff --git a/mm/vmscan.c b/mm/vmscan.c index 74e8edce83ca..1f1403681960 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c @@ -2744,7 +2744,7 @@ static bool shrink_node(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 (file >> sc->priority && !inactive_is_low(target_lruvec, LRU_INACTIVE_FILE)) sc->cache_trim_mode = 1; else sc->cache_trim_mode = 0;