Dan Williams
2019-Jun-26 16:00 UTC
[Nouveau] [PATCH 04/25] mm: remove MEMORY_DEVICE_PUBLIC support
[ add Ira ] On Wed, Jun 26, 2019 at 5:27 AM Christoph Hellwig <hch at lst.de> 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 at lst.de> > Reviewed-by: Jason Gunthorpe <jgg at mellanox.com> > Acked-by: Michal Hocko <mhocko at suse.com>[..]> 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 at intel.com/
Ira Weiny
2019-Jun-26 17:14 UTC
[Nouveau] [PATCH 04/25] mm: remove MEMORY_DEVICE_PUBLIC support
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 at lst.de> 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 at lst.de> > > Reviewed-by: Jason Gunthorpe <jgg at mellanox.com> > > Acked-by: Michal Hocko <mhocko at suse.com> > [..] > > 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 at intel.com/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
Ira Weiny
2019-Jun-26 18:49 UTC
[Nouveau] [PATCH 04/25] mm: remove MEMORY_DEVICE_PUBLIC support
On Wed, Jun 26, 2019 at 10:14:45AM -0700, 'Ira Weiny' wrote:> 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 at lst.de> 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 at lst.de> > > > Reviewed-by: Jason Gunthorpe <jgg at mellanox.com> > > > Acked-by: Michal Hocko <mhocko at suse.com> > > [..] > > > 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 at intel.com/ > > 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...Ok somehow I can't fetch mmotm right now... Dan had and updated mmotm tree and it does have my v4 patch. Does anyone else have issues with git://git.cmpxchg.org/linux-mmotm.git or is it just me? FWIW I have checked proxies etc... and can get to linus and other sites just fine, so it looks like an issue there. Although the web page is fine... Sorry, Ira
Reasonably Related Threads
- [PATCH 04/25] mm: remove MEMORY_DEVICE_PUBLIC support
- [PATCH 04/25] mm: remove MEMORY_DEVICE_PUBLIC support
- [PATCH 2/2] mm: remove extra ZONE_DEVICE struct page refcount
- [RFC PATCH v3 2/2] mm: remove extra ZONE_DEVICE struct page refcount
- [PATCH] mm: remove extra ZONE_DEVICE struct page refcount