summaryrefslogtreecommitdiffstats
path: root/mm/memory.c
diff options
context:
space:
mode:
authorZachary Amsden2006-10-01 08:29:30 +0200
committerLinus Torvalds2006-10-01 09:39:33 +0200
commit3dc907951446b9317b1887223caa4e083390de9f (patch)
treeaddff9ee95e0caea5e895a1a674e49f38254fddd /mm/memory.c
parent[PATCH] invalidate_inode_pages2(): ignore page refcounts (diff)
downloadkernel-qcow2-linux-3dc907951446b9317b1887223caa4e083390de9f.tar.gz
kernel-qcow2-linux-3dc907951446b9317b1887223caa4e083390de9f.tar.xz
kernel-qcow2-linux-3dc907951446b9317b1887223caa4e083390de9f.zip
[PATCH] paravirt: remove read hazard from cow
We don't want to read PTEs directly like this after they have been modified, as a lazy MMU implementation of direct page tables may not have written the updated PTE back to memory yet. Signed-off-by: Zachary Amsden <zach@vmware.com> Signed-off-by: Jeremy Fitzhardinge <jeremy@xensource.com> Cc: Rusty Russell <rusty@rustcorp.com.au> Cc: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'mm/memory.c')
-rw-r--r--mm/memory.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/mm/memory.c b/mm/memory.c
index 160f5b503ead..7707187484cc 100644
--- a/mm/memory.c
+++ b/mm/memory.c
@@ -467,7 +467,7 @@ copy_one_pte(struct mm_struct *dst_mm, struct mm_struct *src_mm,
*/
if (is_cow_mapping(vm_flags)) {
ptep_set_wrprotect(src_mm, addr, src_pte);
- pte = *src_pte;
+ pte = pte_wrprotect(pte);
}
/*