Re: [PATCH v9 07/10] mm: Device exclusive memory access

From: Peter Xu
Date: Fri Jun 04 2021 - 11:20:55 EST


On Fri, Jun 04, 2021 at 11:07:42AM +1000, Alistair Popple wrote:
> On Friday, 4 June 2021 12:47:40 AM AEST Peter Xu wrote:
> > External email: Use caution opening links or attachments
> >
> > On Thu, Jun 03, 2021 at 09:39:32PM +1000, Alistair Popple wrote:
> > > Reclaim won't run on the page due to the extra references from the special
> > > swap entries.
> >
> > That sounds reasonable, but I didn't find the point that stops it, probably
> > due to my limited knowledge on the reclaim code. Could you elaborate?
>
> Sure, it isn't immediately obvious but it ends up being detected at the start
> of is_page_cache_freeable() in the pageout code:
>
>
> static pageout_t pageout(struct page *page, struct address_space *mapping)
> {
>
> [...]
>
> if (!is_page_cache_freeable(page))
> return PAGE_KEEP;

I did look at pageout() but still missed this small helper indeed (while it's
so important to know..), thanks!

--
Peter Xu