]> git.baikalelectronics.ru Git - kernel.git/commit
KVM: VMX: Micro-optimize vmexit time when not exposing PMU
authorWanpeng Li <wanpengli@tencent.com>
Fri, 13 Mar 2020 03:55:18 +0000 (11:55 +0800)
committerPaolo Bonzini <pbonzini@redhat.com>
Mon, 16 Mar 2020 16:58:58 +0000 (17:58 +0100)
commit6fbb213ec163e65416fb2f7ca18709d4dd21fc16
treea77a59dc86fd997e0b105ab004edc9b86d63a625
parent0f107b0624a81e3839667bd19f6488873121c64b
KVM: VMX: Micro-optimize vmexit time when not exposing PMU

PMU is not exposed to guest by most of products from cloud providers since the
bad performance of PMU emulation and security concern. However, it calls
perf_guest_switch_get_msrs() and clear_atomic_switch_msr() unconditionally
even if PMU is not exposed to the guest before each vmentry.

~2% vmexit time reduced can be observed by kvm-unit-tests/vmexit.flat on my
SKX server.

Before patch:
vmcall 1559

After patch:
vmcall 1529

Signed-off-by: Wanpeng Li <wanpengli@tencent.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/vmx/vmx.c