]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - mm/mremap.c
[PATCH] mm: copy_pte_range progress fix
[karo-tx-linux.git] / mm / mremap.c
index fc45dc9a617b013f4db5aea5fe7898bf6cd677b6..f343fc73a8bdd7f0ecd68fb1674438033c85cc49 100644 (file)
@@ -141,6 +141,10 @@ move_one_page(struct vm_area_struct *vma, unsigned long old_addr,
                        if (dst) {
                                pte_t pte;
                                pte = ptep_clear_flush(vma, old_addr, src);
+
+                               /* ZERO_PAGE can be dependant on virtual addr */
+                               pte = move_pte(pte, new_vma->vm_page_prot,
+                                                       old_addr, new_addr);
                                set_pte_at(mm, new_addr, dst, pte);
                        } else
                                error = -ENOMEM;