lkml.org 
[lkml]   [2019]   [Mar]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [RESEND 1/7] mm/gup: Replace get_user_pages_longterm() with FOLL_LONGTERM
On Mon, Mar 25, 2019 at 7:21 AM Ira Weiny <ira.weiny@intel.com> wrote:
[..]
> > > @@ -1268,10 +1246,14 @@ static long check_and_migrate_cma_pages(unsigned long start, long nr_pages,
> > > putback_movable_pages(&cma_page_list);
> > > }
> > > /*
> > > - * We did migrate all the pages, Try to get the page references again
> > > - * migrating any new CMA pages which we failed to isolate earlier.
> > > + * We did migrate all the pages, Try to get the page references
> > > + * again migrating any new CMA pages which we failed to isolate
> > > + * earlier.
> > > */
> > > - nr_pages = get_user_pages(start, nr_pages, gup_flags, pages, vmas);
> > > + nr_pages = __get_user_pages_locked(tsk, mm, start, nr_pages,
> > > + pages, vmas, NULL,
> > > + gup_flags);
> > > +
> >
> > Why did this need to change to __get_user_pages_locked?
>
> __get_uer_pages_locked() is now the "internal call" for get_user_pages.
>
> Technically it did not _have_ to change but there is no need to call
> get_user_pages() again because the FOLL_TOUCH flags is already set. Also this
> call then matches the __get_user_pages_locked() which was called on the pages
> we migrated from. Mostly this keeps the code "symmetrical" in that we called
> __get_user_pages_locked() on the pages we are migrating from and the same call
> on the pages we migrated to.
>
> While the change here looks funny I think the final code is better.

Agree, but I think that either needs to be noted in the changelog so
it's not a surprise, or moved to a follow-on cleanup patch.

\
 
 \ /
  Last update: 2019-03-25 17:46    [W:0.059 / U:3.316 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site