KVM: x86: use static_call_cond for optional callbacks
authorPaolo Bonzini <pbonzini@redhat.com>
Tue, 1 Feb 2022 19:18:07 +0000 (14:18 -0500)
committerPaolo Bonzini <pbonzini@redhat.com>
Fri, 18 Feb 2022 17:31:17 +0000 (12:31 -0500)
SVM implements neither update_emulated_instruction nor
set_apic_access_page_addr.  Remove an "if" by calling them
with static_call_cond().

Reviewed-by: Sean Christopherson <seanjc@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/x86.c

index 746f72a..8a7f325 100644 (file)
@@ -8421,8 +8421,7 @@ writeback:
                        kvm_rip_write(vcpu, ctxt->eip);
                        if (r && (ctxt->tf || (vcpu->guest_debug & KVM_GUESTDBG_SINGLESTEP)))
                                r = kvm_vcpu_do_singlestep(vcpu);
-                       if (kvm_x86_ops.update_emulated_instruction)
-                               static_call(kvm_x86_update_emulated_instruction)(vcpu);
+                       static_call_cond(kvm_x86_update_emulated_instruction)(vcpu);
                        __kvm_set_rflags(vcpu, ctxt->eflags);
                }
 
@@ -9791,10 +9790,7 @@ static void kvm_vcpu_reload_apic_access_page(struct kvm_vcpu *vcpu)
        if (!lapic_in_kernel(vcpu))
                return;
 
-       if (!kvm_x86_ops.set_apic_access_page_addr)
-               return;
-
-       static_call(kvm_x86_set_apic_access_page_addr)(vcpu);
+       static_call_cond(kvm_x86_set_apic_access_page_addr)(vcpu);
 }
 
 void __kvm_request_immediate_exit(struct kvm_vcpu *vcpu)