Re: [PATCH v4 1/4] mm: Don't skip swap entry even if zap_details specified

From: Peter Xu
Date: Wed Feb 16 2022 - 23:22:29 EST


On Wed, Feb 16, 2022 at 06:54:55PM -0800, Andrew Morton wrote:
> On Wed, 16 Feb 2022 17:48:07 +0800 Peter Xu <peterx@xxxxxxxxxx> wrote:
>
> > The "details" pointer shouldn't be the token to decide whether we should skip
> > swap entries. For example, when the user specified details->zap_mapping==NULL,
> > it means the user wants to zap all the pages (including COWed pages), then we
> > need to look into swap entries because there can be private COWed pages that
> > was swapped out.
>
> I assume "user" here means "caller".

Right.

>
> > Skipping some swap entries when details is non-NULL may lead to wrongly leaving
> > some of the swap entries while we should have zapped them.
> >
> > A reproducer of the problem:
> >
> > ...
> >
> > The issue seems to exist starting from the initial commit of git.
>
> I'll add cc:stable to this one, thanks.

Yes, thanks.

I didn't yet check the backports to stable yet, some of them might need some
tweaks on the patch. I'll follow that up when it hits it.

--
Peter Xu