Label names in kvm_init() are horrible, rename them to make it obvious
what we are going to do on the failure path.

Signed-off-by: Vitaly Kuznetsov <[email protected]>
---
 virt/kvm/kvm_main.c | 33 ++++++++++++++++-----------------
 1 file changed, 16 insertions(+), 17 deletions(-)

diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c
index 33e1eee96f75..892ea0b9087e 100644
--- a/virt/kvm/kvm_main.c
+++ b/virt/kvm/kvm_main.c
@@ -4674,7 +4674,7 @@ int kvm_init(void *opaque, unsigned vcpu_size, unsigned 
vcpu_align,
 
        r = kvm_arch_init(opaque);
        if (r)
-               goto out_fail;
+               return r;
 
        /*
         * kvm_arch_init makes sure there's at most one caller
@@ -4685,29 +4685,29 @@ int kvm_init(void *opaque, unsigned vcpu_size, unsigned 
vcpu_align,
         */
        r = kvm_irqfd_init();
        if (r)
-               goto out_irqfd;
+               goto out_arch_exit;
 
        if (!zalloc_cpumask_var(&cpus_hardware_enabled, GFP_KERNEL)) {
                r = -ENOMEM;
-               goto out_free_0;
+               goto out_irqfd_exit;
        }
 
        r = kvm_arch_hardware_setup(opaque);
        if (r < 0)
-               goto out_free_1;
+               goto out_free_hardware_enabled;
 
        c.ret = &r;
        c.opaque = opaque;
        for_each_online_cpu(cpu) {
                smp_call_function_single(cpu, check_processor_compat, &c, 1);
                if (r < 0)
-                       goto out_free_2;
+                       goto out_free_hardware_unsetup;
        }
 
        r = cpuhp_setup_state_nocalls(CPUHP_AP_KVM_STARTING, "kvm/cpu:starting",
                                      kvm_starting_cpu, kvm_dying_cpu);
        if (r)
-               goto out_free_2;
+               goto out_free_hardware_unsetup;
        register_reboot_notifier(&kvm_reboot_notifier);
 
        /* A kmem cache lets us meet the alignment requirements of fx_save. */
@@ -4721,12 +4721,12 @@ int kvm_init(void *opaque, unsigned vcpu_size, unsigned 
vcpu_align,
                                           NULL);
        if (!kvm_vcpu_cache) {
                r = -ENOMEM;
-               goto out_free_3;
+               goto out_free_cpuhp_unregister;
        }
 
        r = kvm_async_pf_init();
        if (r)
-               goto out_free;
+               goto out_free_vcpu_cache;
 
        kvm_chardev_ops.owner = module;
        kvm_vm_fops.owner = module;
@@ -4735,7 +4735,7 @@ int kvm_init(void *opaque, unsigned vcpu_size, unsigned 
vcpu_align,
        r = misc_register(&kvm_dev);
        if (r) {
                pr_err("kvm: misc device register failed\n");
-               goto out_unreg;
+               goto out_async_pf_deinit;
        }
 
        register_syscore_ops(&kvm_syscore_ops);
@@ -4750,22 +4750,21 @@ int kvm_init(void *opaque, unsigned vcpu_size, unsigned 
vcpu_align,
 
        return 0;
 
-out_unreg:
+out_async_pf_deinit:
        kvm_async_pf_deinit();
-out_free:
+out_free_vcpu_cache:
        kmem_cache_destroy(kvm_vcpu_cache);
-out_free_3:
+out_free_cpuhp_unregister:
        unregister_reboot_notifier(&kvm_reboot_notifier);
        cpuhp_remove_state_nocalls(CPUHP_AP_KVM_STARTING);
-out_free_2:
+out_free_hardware_unsetup:
        kvm_arch_hardware_unsetup();
-out_free_1:
+out_free_hardware_enabled:
        free_cpumask_var(cpus_hardware_enabled);
-out_free_0:
+out_irqfd_exit:
        kvm_irqfd_exit();
-out_irqfd:
+out_arch_exit:
        kvm_arch_exit();
-out_fail:
        return r;
 }
 EXPORT_SYMBOL_GPL(kvm_init);
-- 
2.25.4

Reply via email to