Re: [PATCH v3 00/23] mm/gup: track dma-pinned pages: FOLL_PIN, FOLL_LONGTERM

From: Jason Gunthorpe
Date: Tue Nov 12 2019 - 15:38:09 EST


On Mon, Nov 11, 2019 at 04:06:37PM -0800, John Hubbard wrote:
> Hi,
>
> The cover letter is long, so the more important stuff is first:
>
> * Jason, if you or someone could look at the the VFIO cleanup (patch 8)
> and conversion to FOLL_PIN (patch 18), to make sure it's use of
> remote and longterm gup matches what we discussed during the review
> of v2, I'd appreciate it.
>
> * Also for Jason and IB: as noted below, in patch 11, I am (too?) boldly
> converting from put_user_pages() to release_pages().

Why are we doing this? I think things got confused here someplace, as
the comment still says:

/**
* put_user_page() - release a gup-pinned page
* @page: pointer to page to be released
*
* Pages that were pinned via get_user_pages*() must be released via
* either put_user_page(), or one of the put_user_pages*() routines
* below.

I feel like if put_user_pages() is not the correct way to undo
get_user_pages() then it needs to be deleted.

Jason