vmscan: abort reclaim/compaction if compaction can proceed
[firefly-linux-kernel-4.4.55.git] / mm / migrate.c
index 666e4e677414e6d790de715761e395116441e6c4..14d0a6a632f6f8fb2dd0240d35c4853ff67d176d 100644 (file)
@@ -120,10 +120,10 @@ static int remove_migration_pte(struct page *new, struct vm_area_struct *vma,
 
                ptep = pte_offset_map(pmd, addr);
 
-               if (!is_swap_pte(*ptep)) {
-                       pte_unmap(ptep);
-                       goto out;
-               }
+               /*
+                * Peek to check is_swap_pte() before taking ptlock?  No, we
+                * can race mremap's move_ptes(), which skips anon_vma lock.
+                */
 
                ptl = pte_lockptr(mm, pmd);
        }