Merge branch 'linus' into sched/core, to pick up fixes
authorIngo Molnar <mingo@kernel.org>
Thu, 22 Sep 2016 12:49:40 +0000 (14:49 +0200)
committerIngo Molnar <mingo@kernel.org>
Thu, 22 Sep 2016 12:49:40 +0000 (14:49 +0200)
Signed-off-by: Ingo Molnar <mingo@kernel.org>
1  2 
mm/huge_memory.c

diff --combined mm/huge_memory.c
@@@ -1078,7 -1078,7 +1078,7 @@@ struct page *follow_trans_huge_pmd(stru
                goto out;
  
        page = pmd_page(*pmd);
-       VM_BUG_ON_PAGE(!PageHead(page), page);
+       VM_BUG_ON_PAGE(!PageHead(page) && !is_zone_device_page(page), page);
        if (flags & FOLL_TOUCH)
                touch_pmd(vma, addr, pmd);
        if ((flags & FOLL_MLOCK) && (vma->vm_flags & VM_LOCKED)) {
        }
  skip_mlock:
        page += (addr & ~HPAGE_PMD_MASK) >> PAGE_SHIFT;
-       VM_BUG_ON_PAGE(!PageCompound(page), page);
+       VM_BUG_ON_PAGE(!PageCompound(page) && !is_zone_device_page(page), page);
        if (flags & FOLL_GET)
                get_page(page);
  
@@@ -1168,7 -1168,7 +1168,7 @@@ int do_huge_pmd_numa_page(struct fault_
        }
  
        /* See similar comment in do_numa_page for explanation */
 -      if (!(vma->vm_flags & VM_WRITE))
 +      if (!pmd_write(pmd))
                flags |= TNF_NO_GROUP;
  
        /*