Thread (14 messages) 14 messages, 3 authors, 2016-11-29

Re: [PATCH] mremap: move_ptes: check pte dirty after its removal

From: Linus Torvalds <torvalds@linux-foundation.org>
Date: 2016-11-29 03:07:23
Also in: lkml

On Mon, Nov 28, 2016 at 6:57 PM, Aaron Lu [off-list ref] wrote:
Here is a fix patch, sorry for the trouble.
I don't think you tested this one.. You've now essentially reverted
5d1904204c99 entirely by making the new force_flush logic a no-op.
+               pmd = pmdp_huge_get_and_clear(mm, old_addr, old_pmd);
                if (pmd_present(*old_pmd) && pmd_dirty(*old_pmd))
                        force_flush = true;
You need to be testing "pmd", not "*old_pmd".

Because now "*old_pmd" will be zeroes.
                if (pte_present(*old_pte) && pte_dirty(*old_pte))
                        force_flush = true;
Similarly here. You need to check "pte", not "*old_pte".

            Linus

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help