Skip to content
  • Lorenzo Stoakes's avatar
    mm: unexport __get_user_pages() · 0d731759
    Lorenzo Stoakes authored
    
    
    This patch unexports the low-level __get_user_pages() function.
    
    Recent refactoring of the get_user_pages* functions allow flags to be
    passed through get_user_pages() which eliminates the need for access to
    this function from its one user, kvm.
    
    We can see that the two calls to get_user_pages() which replace
    __get_user_pages() in kvm_main.c are equivalent by examining their call
    stacks:
    
      get_user_page_nowait():
        get_user_pages(start, 1, flags, page, NULL)
        __get_user_pages_locked(current, current->mm, start, 1, page, NULL, NULL,
    			    false, flags | FOLL_TOUCH)
        __get_user_pages(current, current->mm, start, 1,
    		     flags | FOLL_TOUCH | FOLL_GET, page, NULL, NULL)
    
      check_user_page_hwpoison():
        get_user_pages(addr, 1, flags, NULL, NULL)
        __get_user_pages_locked(current, current->mm, addr, 1, NULL, NULL, NULL,
    			    false, flags | FOLL_TOUCH)
        __get_user_pages(current, current->mm, addr, 1, flags | FOLL_TOUCH, NULL,
    		     NULL, NULL)
    
    Signed-off-by: default avatarLorenzo Stoakes <lstoakes@gmail.com>
    Acked-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    Acked-by: default avatarMichal Hocko <mhocko@suse.com>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    0d731759