Skip to content
  • Michal Hocko's avatar
    mm: new_vma_page() cannot see NULL vma for hugetlb pages · cc81717e
    Michal Hocko authored
    Commit 11c731e8
    
     ("mm/mempolicy: fix !vma in new_vma_page()") has
    removed BUG_ON(!vma) from new_vma_page which is partially correct
    because page_address_in_vma will return EFAULT for non-linear mappings
    and at least shared shmem might be mapped this way.
    
    The patch also tried to prevent NULL ptr for hugetlb pages which is not
    correct AFAICS because hugetlb pages cannot be mapped as VM_NONLINEAR
    and other conditions in page_address_in_vma seem to be legit and catch
    real bugs.
    
    This patch restores BUG_ON for PageHuge to catch potential issues when
    the to-be-migrated page is not setup properly.
    
    Signed-off-by: default avatarMichal Hocko <mhocko@suse.cz>
    Reviewed-by: default avatarBob Liu <bob.liu@oracle.com>
    Cc: Sasha Levin <sasha.levin@oracle.com>
    Cc: Wanpeng Li <liwanp@linux.vnet.ibm.com>
    Cc: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    cc81717e