KVM: PPC: e500mc: Move reset of oldpir below call to kvm_vcpu_init()
authorSean Christopherson <sean.j.christopherson@intel.com>
Wed, 18 Dec 2019 21:54:59 +0000 (13:54 -0800)
committerPaolo Bonzini <pbonzini@redhat.com>
Fri, 24 Jan 2020 08:19:00 +0000 (09:19 +0100)
Move the initialization of oldpir so that the call to kvm_vcpu_init() is
at the top of kvmppc_core_vcpu_create_e500mc().  oldpir is only use
when loading/putting a vCPU, which currently cannot be done until after
kvm_arch_vcpu_create() completes.  Reording the call to kvm_vcpu_init()
paves the way for moving the invocation to common PPC code.

No functional change intended.

Signed-off-by: Sean Christopherson <sean.j.christopherson@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/powerpc/kvm/e500mc.c

index 7c0d392..6c782b8 100644 (file)
@@ -310,13 +310,13 @@ static int kvmppc_core_vcpu_create_e500mc(struct kvm *kvm, struct kvm_vcpu *vcpu
        BUILD_BUG_ON(offsetof(struct kvmppc_vcpu_e500, vcpu) != 0);
        vcpu_e500 = to_e500(vcpu);
 
-       /* Invalid PIR value -- this LPID dosn't have valid state on any cpu */
-       vcpu->arch.oldpir = 0xffffffff;
-
        err = kvm_vcpu_init(vcpu, kvm, id);
        if (err)
                return err;
 
+       /* Invalid PIR value -- this LPID dosn't have valid state on any cpu */
+       vcpu->arch.oldpir = 0xffffffff;
+
        err = kvmppc_e500_tlb_init(vcpu_e500);
        if (err)
                goto uninit_vcpu;