diff options
author | Marcelo Tosatti <mtosatti@redhat.com> | 2008-12-01 22:32:05 -0200 |
---|---|---|
committer | Avi Kivity <avi@redhat.com> | 2008-12-31 16:55:44 +0200 |
commit | ad218f85e388e8ca816ff09d91c246cd014c53a8 (patch) | |
tree | 73fff9d1b3f01e760c2da8bc2276c1a74f4a36e4 /arch/x86/include | |
parent | 6cffe8ca4a2adf1ac5003d9cad08fe4434d6eee0 (diff) | |
download | blackbird-op-linux-ad218f85e388e8ca816ff09d91c246cd014c53a8.tar.gz blackbird-op-linux-ad218f85e388e8ca816ff09d91c246cd014c53a8.zip |
KVM: MMU: prepopulate the shadow on invlpg
If the guest executes invlpg, peek into the pagetable and attempt to
prepopulate the shadow entry.
Also stop dirty fault updates from interfering with the fork detector.
2% improvement on RHEL3/AIM7.
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'arch/x86/include')
-rw-r--r-- | arch/x86/include/asm/kvm_host.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/x86/include/asm/kvm_host.h b/arch/x86/include/asm/kvm_host.h index 65b1ed295698..97215a458e5f 100644 --- a/arch/x86/include/asm/kvm_host.h +++ b/arch/x86/include/asm/kvm_host.h @@ -602,7 +602,8 @@ unsigned long segment_base(u16 selector); void kvm_mmu_flush_tlb(struct kvm_vcpu *vcpu); void kvm_mmu_pte_write(struct kvm_vcpu *vcpu, gpa_t gpa, - const u8 *new, int bytes); + const u8 *new, int bytes, + bool guest_initiated); int kvm_mmu_unprotect_page_virt(struct kvm_vcpu *vcpu, gva_t gva); void __kvm_mmu_free_some_pages(struct kvm_vcpu *vcpu); int kvm_mmu_load(struct kvm_vcpu *vcpu); |