diff options
author | Xiao Guangrong <xiaoguangrong@cn.fujitsu.com> | 2010-06-08 20:07:01 +0800 |
---|---|---|
committer | Avi Kivity <avi@redhat.com> | 2010-08-01 10:46:26 +0300 |
commit | 3b5d13218667b3ca52efa52cec1d322163bf5465 (patch) | |
tree | 86b2d982c2291d5204425abc45f3b4f61deb3e4c /arch/x86/kvm | |
parent | 5304efde6ae27deeeae79b97af709d4ceecc336e (diff) | |
download | op-kernel-dev-3b5d13218667b3ca52efa52cec1d322163bf5465.zip op-kernel-dev-3b5d13218667b3ca52efa52cec1d322163bf5465.tar.gz |
KVM: MMU: delay local tlb flush
delay local tlb flush until enter guest moden, it can reduce vpid flush
frequency and reduce remote tlb flush IPI(if KVM_REQ_TLB_FLUSH bit is
already set, IPI is not sent)
Signed-off-by: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'arch/x86/kvm')
-rw-r--r-- | arch/x86/kvm/mmu.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/x86/kvm/mmu.c b/arch/x86/kvm/mmu.c index e087f85..4706a93 100644 --- a/arch/x86/kvm/mmu.c +++ b/arch/x86/kvm/mmu.c @@ -2364,7 +2364,7 @@ static int nonpaging_init_context(struct kvm_vcpu *vcpu) void kvm_mmu_flush_tlb(struct kvm_vcpu *vcpu) { ++vcpu->stat.tlb_flush; - kvm_x86_ops->tlb_flush(vcpu); + set_bit(KVM_REQ_TLB_FLUSH, &vcpu->requests); } static void paging_new_cr3(struct kvm_vcpu *vcpu) |