• Linus Torvalds's avatar
    Merge branch 'gup_flag-cleanups' · 63ae602c
    Linus Torvalds authored
    Merge the gup_flags cleanups from Lorenzo Stoakes:
     "This patch series adjusts functions in the get_user_pages* family such
      that desired FOLL_* flags are passed as an argument rather than
      implied by flags.
    
      The purpose of this change is to make the use of FOLL_FORCE explicit
      so it is easier to grep for and clearer to callers that this flag is
      being used.  The use of FOLL_FORCE is an issue as it overrides missing
      VM_READ/VM_WRITE flags for the VMA whose pages we are reading
      from/writing to, which can result in surprising behaviour.
    
      The patch series came out of the discussion around commit 38e08854
      ("mm: check VMA flags to avoid invalid PROT_NONE NUMA balancing"),
      which addressed a BUG_ON() being triggered when a page was faulted in
      with PROT_NONE set but having been overridden by FOLL_FORCE.
      do_numa_page() was run on the assumption the page _must_ be one marked
      for NUMA node migration as an actual PROT_NONE page would have been
      dealt with prior to this code path, however FOLL_FORCE introduced a
      situation where this assumption did not hold.
    
      See
    
          https://marc.info/?l=linux-mm&m=147585445805166
    
      for the patch proposal"
    
    Additionally, there's a fix for an ancient bug related to FOLL_FORCE and
    FOLL_WRITE by me.
    
    [ This branch was rebased recently to add a few more acked-by's and
      reviewed-by's ]
    
    * gup_flag-cleanups:
      mm: replace access_process_vm() write parameter with gup_flags
      mm: replace access_remote_vm() write parameter with gup_flags
      mm: replace __access_remote_vm() write parameter with gup_flags
      mm: replace get_user_pages_remote() write/force parameters with gup_flags
      mm: replace get_user_pages() write/force parameters with gup_flags
      mm: replace get_vaddr_frames() write/force parameters with gup_flags
      mm: replace get_user_pages_locked() write/force parameters with gup_flags
      mm: replace get_user_pages_unlocked() write/force parameters with gup_flags
      mm: remove write/force parameters from __get_user_pages_unlocked()
      mm: remove write/force parameters from __get_user_pages_locked()
      mm: remove gup_flags FOLL_WRITE games from __get_user_pages()
    63ae602c
Name
Last commit
Last update
..
boot Loading commit data...
configs Loading commit data...
include Loading commit data...
kernel Loading commit data...
lib Loading commit data...
mm Loading commit data...
Kconfig Loading commit data...
Kconfig.debug Loading commit data...
Makefile Loading commit data...