On Wed, Jun 26, 2019 at 09:00:47AM -0700, Dan Williams wrote: > [ add Ira ] > > On Wed, Jun 26, 2019 at 5:27 AM Christoph Hellwig <hch@xxxxxx> wrote: > > > > The code hasn't been used since it was added to the tree, and doesn't > > appear to actually be usable. > > > > Signed-off-by: Christoph Hellwig <hch@xxxxxx> > > Reviewed-by: Jason Gunthorpe <jgg@xxxxxxxxxxxx> > > Acked-by: Michal Hocko <mhocko@xxxxxxxx> > [..] > > diff --git a/mm/swap.c b/mm/swap.c > > index 7ede3eddc12a..83107410d29f 100644 > > --- a/mm/swap.c > > +++ b/mm/swap.c > > @@ -740,17 +740,6 @@ void release_pages(struct page **pages, int nr) > > if (is_huge_zero_page(page)) > > continue; > > > > - /* Device public page can not be huge page */ > > - if (is_device_public_page(page)) { > > - if (locked_pgdat) { > > - spin_unlock_irqrestore(&locked_pgdat->lru_lock, > > - flags); > > - locked_pgdat = NULL; > > - } > > - put_devmap_managed_page(page); > > - continue; > > - } > > - > > This collides with Ira's bug fix [1]. The MEMORY_DEVICE_FSDAX case > needs this to be converted to be independent of "public" pages. > Perhaps it should be pulled out of -mm and incorporated in this > series. > > [1]: https://lore.kernel.org/lkml/20190605214922.17684-1-ira.weiny@xxxxxxxxx/ Agreed and Andrew picked the first 2 versions of it, mmotm commits: 3eed114b5b6b mm-swap-fix-release_pages-when-releasing-devmap-pages-v2 9b7d8d0f572f mm/swap.c: fix release_pages() when releasing devmap pages I don't see v3 but there were no objections... Ira