Re: [PATCH v2 07/12] mm: thp: check pmd migration entry in common path

From: Naoya Horiguchi
Date: Thu Nov 10 2016 - 04:35:21 EST


On Thu, Nov 10, 2016 at 05:28:20PM +0800, Hillf Danton wrote:
> On Thursday, November 10, 2016 5:22 PM Naoya Horiguchi wrote:
> > On Thu, Nov 10, 2016 at 05:08:07PM +0800, Hillf Danton wrote:
> > > On Tuesday, November 08, 2016 7:32 AM Naoya Horiguchi wrote:
> > > >
> > > > @@ -1013,6 +1027,9 @@ int do_huge_pmd_wp_page(struct fault_env *fe, pmd_t orig_pmd)
> > > > if (unlikely(!pmd_same(*fe->pmd, orig_pmd)))
> > > > goto out_unlock;
> > > >
> > > > + if (unlikely(!pmd_present(orig_pmd)))
> > > > + goto out_unlock;
> > > > +
> > >
> > > Can we encounter a migration entry after acquiring ptl ?
> >
> > I think we can. thp migration code releases ptl after converting pmd into
> > migration entry, so other code can see it even within ptl.
> >
> But we have a pmd_same check there, you see.

You're right. So we can omit this pmd_present check.

Thanks,
Naoya Horiguchi