|
|
@@ -1316,12 +1316,6 @@ static int try_to_unmap_one(struct page *page, struct vm_area_struct *vma,
|
|
|
}
|
|
|
|
|
|
while (page_vma_mapped_walk(&pvmw)) {
|
|
|
- subpage = page - page_to_pfn(page) + pte_pfn(*pvmw.pte);
|
|
|
- address = pvmw.address;
|
|
|
-
|
|
|
- /* Unexpected PMD-mapped THP? */
|
|
|
- VM_BUG_ON_PAGE(!pvmw.pte, page);
|
|
|
-
|
|
|
/*
|
|
|
* If the page is mlock()d, we cannot swap it out.
|
|
|
* If it's recently referenced (perhaps page_referenced
|
|
|
@@ -1345,6 +1339,13 @@ static int try_to_unmap_one(struct page *page, struct vm_area_struct *vma,
|
|
|
continue;
|
|
|
}
|
|
|
|
|
|
+ /* Unexpected PMD-mapped THP? */
|
|
|
+ VM_BUG_ON_PAGE(!pvmw.pte, page);
|
|
|
+
|
|
|
+ subpage = page - page_to_pfn(page) + pte_pfn(*pvmw.pte);
|
|
|
+ address = pvmw.address;
|
|
|
+
|
|
|
+
|
|
|
if (!(flags & TTU_IGNORE_ACCESS)) {
|
|
|
if (ptep_clear_flush_young_notify(vma, address,
|
|
|
pvmw.pte)) {
|