Commit 4651fc56 authored by Vitaly Kuznetsov's avatar Vitaly Kuznetsov Committed by Paolo Bonzini

KVM: x86: Drop vendor specific functions for APICv/AVIC enablement

Now that APICv/AVIC enablement is kept in common 'enable_apicv' variable,
there's no need to call kvm_apicv_init() from vendor specific code.

No functional change intended.
Reviewed-by: default avatarSean Christopherson <seanjc@google.com>
Reviewed-by: default avatarMaxim Levitsky <mlevitsk@redhat.com>
Signed-off-by: default avatarVitaly Kuznetsov <vkuznets@redhat.com>
Message-Id: <20210609150911.1471882c-3-vkuznets@redhat.com>
Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
parent fdf513e3
...@@ -1672,7 +1672,6 @@ gpa_t kvm_mmu_gva_to_gpa_system(struct kvm_vcpu *vcpu, gva_t gva, ...@@ -1672,7 +1672,6 @@ gpa_t kvm_mmu_gva_to_gpa_system(struct kvm_vcpu *vcpu, gva_t gva,
struct x86_exception *exception); struct x86_exception *exception);
bool kvm_apicv_activated(struct kvm *kvm); bool kvm_apicv_activated(struct kvm *kvm);
void kvm_apicv_init(struct kvm *kvm, bool enable);
void kvm_vcpu_update_apicv(struct kvm_vcpu *vcpu); void kvm_vcpu_update_apicv(struct kvm_vcpu *vcpu);
void kvm_request_apicv_update(struct kvm *kvm, bool activate, void kvm_request_apicv_update(struct kvm *kvm, bool activate,
unsigned long bit); unsigned long bit);
......
...@@ -4442,7 +4442,6 @@ static int svm_vm_init(struct kvm *kvm) ...@@ -4442,7 +4442,6 @@ static int svm_vm_init(struct kvm *kvm)
return ret; return ret;
} }
kvm_apicv_init(kvm, enable_apicv);
return 0; return 0;
} }
......
...@@ -7004,7 +7004,6 @@ static int vmx_vm_init(struct kvm *kvm) ...@@ -7004,7 +7004,6 @@ static int vmx_vm_init(struct kvm *kvm)
break; break;
} }
} }
kvm_apicv_init(kvm, enable_apicv);
return 0; return 0;
} }
......
...@@ -8471,16 +8471,15 @@ bool kvm_apicv_activated(struct kvm *kvm) ...@@ -8471,16 +8471,15 @@ bool kvm_apicv_activated(struct kvm *kvm)
} }
EXPORT_SYMBOL_GPL(kvm_apicv_activated); EXPORT_SYMBOL_GPL(kvm_apicv_activated);
void kvm_apicv_init(struct kvm *kvm, bool enable) static void kvm_apicv_init(struct kvm *kvm)
{ {
if (enable) if (enable_apicv)
clear_bit(APICV_INHIBIT_REASON_DISABLE, clear_bit(APICV_INHIBIT_REASON_DISABLE,
&kvm->arch.apicv_inhibit_reasons); &kvm->arch.apicv_inhibit_reasons);
else else
set_bit(APICV_INHIBIT_REASON_DISABLE, set_bit(APICV_INHIBIT_REASON_DISABLE,
&kvm->arch.apicv_inhibit_reasons); &kvm->arch.apicv_inhibit_reasons);
} }
EXPORT_SYMBOL_GPL(kvm_apicv_init);
static void kvm_sched_yield(struct kvm_vcpu *vcpu, unsigned long dest_id) static void kvm_sched_yield(struct kvm_vcpu *vcpu, unsigned long dest_id)
{ {
...@@ -10885,6 +10884,7 @@ int kvm_arch_init_vm(struct kvm *kvm, unsigned long type) ...@@ -10885,6 +10884,7 @@ int kvm_arch_init_vm(struct kvm *kvm, unsigned long type)
INIT_DELAYED_WORK(&kvm->arch.kvmclock_update_work, kvmclock_update_fn); INIT_DELAYED_WORK(&kvm->arch.kvmclock_update_work, kvmclock_update_fn);
INIT_DELAYED_WORK(&kvm->arch.kvmclock_sync_work, kvmclock_sync_fn); INIT_DELAYED_WORK(&kvm->arch.kvmclock_sync_work, kvmclock_sync_fn);
kvm_apicv_init(kvm);
kvm_hv_init_vm(kvm); kvm_hv_init_vm(kvm);
kvm_page_track_init(kvm); kvm_page_track_init(kvm);
kvm_mmu_init_vm(kvm); kvm_mmu_init_vm(kvm);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment