• Sean Christopherson's avatar
    KVM: SVM: Remove unnecessary APICv/AVIC update in vCPU unblocking path · e422b889
    Sean Christopherson authored
    Remove handling of KVM_REQ_APICV_UPDATE from svm_vcpu_unblocking(), it's
    no longer needed as it was made obsolete by commit df7e4827 ("KVM:
    SVM: call avic_vcpu_load/avic_vcpu_put when enabling/disabling AVIC").
    Prior to that commit, the manual check was necessary to ensure the AVIC
    stuff was updated by avic_set_running() when a request to enable APICv
    became pending while the vCPU was blocking, as the request handling
    itself would not do the update.  But, as evidenced by the commit, that
    logic was flawed and subject to various races.
    
    Now that svm_refresh_apicv_exec_ctrl() does avic_vcpu_load/put() in
    response to an APICv status change, drop the manual check in the
    unblocking path.
    Suggested-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    Signed-off-by: default avatarSean Christopherson <seanjc@google.com>
    Message-Id: <20211208015236.1616697-13-seanjc@google.com>
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    e422b889
avic.c 26.2 KB