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.


-aneesh

Reply via email to