• Wanpeng Li's avatar
    KVM: VMX: Handle preemption timer fastpath · 26efe2fd
    Wanpeng Li authored
    This patch implements a fastpath for the preemption timer vmexit.  The vmexit
    can be handled quickly so it can be performed with interrupts off and going
    back directly to the guest.
    
    Testing on SKX Server.
    
    cyclictest in guest(w/o mwait exposed, adaptive advance lapic timer is default -1):
    
    5540.5ns -> 4602ns       17%
    
    kvm-unit-test/vmexit.flat:
    
    w/o avanced timer:
    tscdeadline_immed: 3028.5  -> 2494.75  17.6%
    tscdeadline:       5765.7  -> 5285      8.3%
    
    w/ adaptive advance timer default -1:
    tscdeadline_immed: 3123.75 -> 2583     17.3%
    tscdeadline:       4663.75 -> 4537      2.7%
    Tested-by: default avatarHaiwei Li <lihaiwei@tencent.com>
    Cc: Haiwei Li <lihaiwei@tencent.com>
    Signed-off-by: default avatarWanpeng Li <wanpengli@tencent.com>
    Message-Id: <1588055009-12677-8-git-send-email-wanpengli@tencent.com>
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    26efe2fd
vmx.c 226 KB