]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
KVM: Clean up error labels in kvm_init()
authorSean Christopherson <seanjc@google.com>
Wed, 30 Nov 2022 23:09:34 +0000 (23:09 +0000)
committerPaolo Bonzini <pbonzini@redhat.com>
Fri, 13 Jan 2023 15:47:32 +0000 (10:47 -0500)
Convert the last two "out" lables to "err" labels now that the dust has
settled, i.e. now that there are no more planned changes to the order
of things in kvm_init().

Use "err" instead of "out" as it's easier to describe what failed than it
is to describe what needs to be unwound, e.g. if allocating a per-CPU kick
mask fails, KVM needs to free any masks that were allocated, and of course
needs to unwind previous operations.

Reported-by: Chao Gao <chao.gao@intel.com>
Signed-off-by: Sean Christopherson <seanjc@google.com>
Message-Id: <20221130230934.1014142-51-seanjc@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
virt/kvm/kvm_main.c

index 37c5e035962577af1a03240e685c2ec2f1f22646..07bf29450521c0575b24c022bb5bb03973d88c86 100644 (file)
@@ -5944,14 +5944,14 @@ int kvm_init(unsigned vcpu_size, unsigned vcpu_align, struct module *module)
                                           NULL);
        if (!kvm_vcpu_cache) {
                r = -ENOMEM;
-               goto out_free_3;
+               goto err_vcpu_cache;
        }
 
        for_each_possible_cpu(cpu) {
                if (!alloc_cpumask_var_node(&per_cpu(cpu_kick_mask, cpu),
                                            GFP_KERNEL, cpu_to_node(cpu))) {
                        r = -ENOMEM;
-                       goto out_free_4;
+                       goto err_cpu_kick_mask;
                }
        }
 
@@ -5993,11 +5993,11 @@ err_vfio:
 err_async_pf:
        kvm_irqfd_exit();
 err_irqfd:
-out_free_4:
+err_cpu_kick_mask:
        for_each_possible_cpu(cpu)
                free_cpumask_var(per_cpu(cpu_kick_mask, cpu));
        kmem_cache_destroy(kvm_vcpu_cache);
-out_free_3:
+err_vcpu_cache:
 #ifdef CONFIG_KVM_GENERIC_HARDWARE_ENABLING
        unregister_syscore_ops(&kvm_syscore_ops);
        unregister_reboot_notifier(&kvm_reboot_notifier);