Re: [PATCH v10] mm: vmscan: try to reclaim swapcache pages if no swap space

From: Chris Li
Date: Mon Nov 27 2023 - 02:42:28 EST


Hi Ying,

On Sun, Nov 26, 2023 at 6:36 PM Huang, Ying <ying.huang@xxxxxxxxx> wrote:
>
> Michal Hocko <mhocko@xxxxxxxx> writes:
>
> > On Thu 23-11-23 14:15:59, Huang, Ying wrote:
> >> Michal Hocko <mhocko@xxxxxxxx> writes:
> > [...]
> >> > Yes swapcache pages are indeed more complicated but most of the time
> >> > they just go away as well, no?
> >>
> >> When we swapin a page, we will put it in swapcache too. And the page
> >> can be in that state for long time if there is more than 50% free space
> >> in the swap device.
> >
> > True, but why is that a problem? If you encounter such a swapped in page
> > on the file LRU then the page should be referened and as such should be
> > activated, no?
>
> This just means that anonymous pages in file LRU aren't temporary or
> short-term. So we need to consider that. For example, the original
> method to balance between anonymous pages and file pages need to be
> re-designed. The anonymous pages are considered hotter than file pages
> in general.

I agree with Ying that anonymous pages typically have different page
access patterns than file pages, so we might want to treat them
differently to reclaim them effectively.
One random idea:
How about we put the anonymous page in a swap cache in a different LRU
than the rest of the anonymous pages. Then shrinking against those
pages in the swap cache would be more effective.Instead of having
[anon, file] LRU, now we have [anon not in swap cache, anon in swap
cache, file] LRU

Chris