On Tue, Jun 4, 2019 at 4:30 PM Aneesh Kumar K.V <aneesh.kumar@xxxxxxxxxxxxx> wrote: > > On 6/4/19 12:56 PM, Pingfan Liu wrote: > > The PF_MEMALLOC_NOCMA is set by memalloc_nocma_save(), which is finally > > cast to ~_GFP_MOVABLE. So __get_user_pages_locked() will get pages from > > non CMA area and pin them. There is no need to > > check_and_migrate_cma_pages(). > > > That is not completely correct. We can fault in that pages outside > get_user_pages_longterm at which point those pages can get allocated > from CMA region. memalloc_nocma_save() as added as an optimization to > avoid unnecessary page migration. Yes, you are right. Thanks, Pingfan