Loading arch/x86/kvm/svm.c +20 −8 Original line number Diff line number Diff line Loading @@ -1600,6 +1600,23 @@ static void svm_vcpu_reset(struct kvm_vcpu *vcpu, bool init_event) avic_update_vapic_bar(svm, APIC_DEFAULT_PHYS_BASE); } static int avic_init_vcpu(struct vcpu_svm *svm) { int ret; if (!avic) return 0; ret = avic_init_backing_page(&svm->vcpu); if (ret) return ret; INIT_LIST_HEAD(&svm->ir_list); spin_lock_init(&svm->ir_list_lock); return ret; } static struct kvm_vcpu *svm_create_vcpu(struct kvm *kvm, unsigned int id) { struct vcpu_svm *svm; Loading Loading @@ -1636,15 +1653,10 @@ static struct kvm_vcpu *svm_create_vcpu(struct kvm *kvm, unsigned int id) if (!hsave_page) goto free_page3; if (avic) { err = avic_init_backing_page(&svm->vcpu); err = avic_init_vcpu(svm); if (err) goto free_page4; INIT_LIST_HEAD(&svm->ir_list); spin_lock_init(&svm->ir_list_lock); } /* We initialize this flag to true to make sure that the is_running * bit would be set the first time the vcpu is loaded. */ Loading Loading
arch/x86/kvm/svm.c +20 −8 Original line number Diff line number Diff line Loading @@ -1600,6 +1600,23 @@ static void svm_vcpu_reset(struct kvm_vcpu *vcpu, bool init_event) avic_update_vapic_bar(svm, APIC_DEFAULT_PHYS_BASE); } static int avic_init_vcpu(struct vcpu_svm *svm) { int ret; if (!avic) return 0; ret = avic_init_backing_page(&svm->vcpu); if (ret) return ret; INIT_LIST_HEAD(&svm->ir_list); spin_lock_init(&svm->ir_list_lock); return ret; } static struct kvm_vcpu *svm_create_vcpu(struct kvm *kvm, unsigned int id) { struct vcpu_svm *svm; Loading Loading @@ -1636,15 +1653,10 @@ static struct kvm_vcpu *svm_create_vcpu(struct kvm *kvm, unsigned int id) if (!hsave_page) goto free_page3; if (avic) { err = avic_init_backing_page(&svm->vcpu); err = avic_init_vcpu(svm); if (err) goto free_page4; INIT_LIST_HEAD(&svm->ir_list); spin_lock_init(&svm->ir_list_lock); } /* We initialize this flag to true to make sure that the is_running * bit would be set the first time the vcpu is loaded. */ Loading