Re: [PATCH v2] mm/hmm: make device private reference counts zero based

From: Christoph Hellwig
Date: Thu Oct 15 2020 - 03:44:30 EST


On Mon, Oct 12, 2020 at 02:14:07PM -0700, Dan Williams wrote:
> > ZONE_DEVICE struct pages have an extra reference count that complicates the
> > code for put_page() and several places in the kernel that need to check the
> > reference count to see that a page is not being used (gup, compaction,
> > migration, etc.). Clean up the code so the reference count doesn't need to
> > be treated specially for device private pages, leaving DAX as still being
> > a special case.
>
> Please no half-step to removing the special casing...

Agreed. I really like where the refcount changes are heading, but
I don't think this half-step is helpful.