summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorAvi Kivity <avi@qumranet.com>2008-08-27 13:40:51 (GMT)
committerAvi Kivity <avi@qumranet.com>2008-10-15 08:15:24 (GMT)
commit171d595d3b3254b9a952af8d1f6965d2e85dcbaa (patch)
tree87e4197b72ff28e04adb72a157c483d6e571a0be /arch
parent2245a28fe2e6fdb1bdabc4dcde1ea3a5c37e2a9e (diff)
downloadlinux-171d595d3b3254b9a952af8d1f6965d2e85dcbaa.tar.xz
KVM: MMU: Flush tlbs after clearing write permission when accessing dirty log
Otherwise, the cpu may allow writes to the tracked pages, and we lose some display bits or fail to migrate correctly. Signed-off-by: Avi Kivity <avi@qumranet.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/x86/kvm/mmu.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/x86/kvm/mmu.c b/arch/x86/kvm/mmu.c
index 5052acd..853a288 100644
--- a/arch/x86/kvm/mmu.c
+++ b/arch/x86/kvm/mmu.c
@@ -2111,6 +2111,7 @@ void kvm_mmu_slot_remove_write_access(struct kvm *kvm, int slot)
if (pt[i] & PT_WRITABLE_MASK)
pt[i] &= ~PT_WRITABLE_MASK;
}
+ kvm_flush_remote_tlbs(kvm);
spin_unlock(&kvm->mmu_lock);
}