]> asedeno.scripts.mit.edu Git - linux.git/blobdiff - arch/powerpc/kvm/e500.c
KVM: PPC: Move kvm_vcpu_init() invocation to common code
[linux.git] / arch / powerpc / kvm / e500.c
index f5dd2c7adcd43df61783fda87f9a338f6bad4177..f2b4feaff6d226b72a2f883643c65f8d3dafe381 100644 (file)
@@ -433,8 +433,7 @@ static int kvmppc_set_one_reg_e500(struct kvm_vcpu *vcpu, u64 id,
        return r;
 }
 
-static int kvmppc_core_vcpu_create_e500(struct kvm *kvm, struct kvm_vcpu *vcpu,
-                                       unsigned int id)
+static int kvmppc_core_vcpu_create_e500(struct kvm_vcpu *vcpu)
 {
        struct kvmppc_vcpu_e500 *vcpu_e500;
        int err;
@@ -442,14 +441,8 @@ static int kvmppc_core_vcpu_create_e500(struct kvm *kvm, struct kvm_vcpu *vcpu,
        BUILD_BUG_ON(offsetof(struct kvmppc_vcpu_e500, vcpu) != 0);
        vcpu_e500 = to_e500(vcpu);
 
-       err = kvm_vcpu_init(vcpu, kvm, id);
-       if (err)
-               return err;
-
-       if (kvmppc_e500_id_table_alloc(vcpu_e500) == NULL) {
-               err = -ENOMEM;
-               goto uninit_vcpu;
-       }
+       if (kvmppc_e500_id_table_alloc(vcpu_e500) == NULL)
+               return -ENOMEM;
 
        err = kvmppc_e500_tlb_init(vcpu_e500);
        if (err)
@@ -467,8 +460,6 @@ static int kvmppc_core_vcpu_create_e500(struct kvm *kvm, struct kvm_vcpu *vcpu,
        kvmppc_e500_tlb_uninit(vcpu_e500);
 uninit_id:
        kvmppc_e500_id_table_free(vcpu_e500);
-uninit_vcpu:
-       kvm_vcpu_uninit(vcpu);
        return err;
 }
 
@@ -479,7 +470,6 @@ static void kvmppc_core_vcpu_free_e500(struct kvm_vcpu *vcpu)
        free_page((unsigned long)vcpu->arch.shared);
        kvmppc_e500_tlb_uninit(vcpu_e500);
        kvmppc_e500_id_table_free(vcpu_e500);
-       kvm_vcpu_uninit(vcpu);
 }
 
 static int kvmppc_core_init_vm_e500(struct kvm *kvm)