Commit f76f6371 authored by Janosch Frank's avatar Janosch Frank Committed by Christian Borntraeger
Browse files

KVM: s390: Cleanup kvm_arch_init error path



Both kvm_s390_gib_destroy and debug_unregister test if the needed
pointers are not NULL and hence can be called unconditionally.

Signed-off-by: default avatarJanosch Frank <frankja@linux.ibm.com>
Link: https://lore.kernel.org/kvm/20191002075627.3582-1-frankja@linux.ibm.com


Reviewed-by: default avatarDavid Hildenbrand <david@redhat.com>
Reviewed-by: default avatarThomas Huth <thuth@redhat.com>
Signed-off-by: default avatarChristian Borntraeger <borntraeger@de.ibm.com>
parent 7775cbaa
Loading
Loading
Loading
Loading
+7 −11
Original line number Diff line number Diff line
@@ -453,16 +453,14 @@ static void kvm_s390_cpu_feat_init(void)

int kvm_arch_init(void *opaque)
{
	int rc;
	int rc = -ENOMEM;

	kvm_s390_dbf = debug_register("kvm-trace", 32, 1, 7 * sizeof(long));
	if (!kvm_s390_dbf)
		return -ENOMEM;

	if (debug_register_view(kvm_s390_dbf, &debug_sprintf_view)) {
		rc = -ENOMEM;
		goto out_debug_unreg;
	}
	if (debug_register_view(kvm_s390_dbf, &debug_sprintf_view))
		goto out;

	kvm_s390_cpu_feat_init();

@@ -470,19 +468,17 @@ int kvm_arch_init(void *opaque)
	rc = kvm_register_device_ops(&kvm_flic_ops, KVM_DEV_TYPE_FLIC);
	if (rc) {
		pr_err("A FLIC registration call failed with rc=%d\n", rc);
		goto out_debug_unreg;
		goto out;
	}

	rc = kvm_s390_gib_init(GAL_ISC);
	if (rc)
		goto out_gib_destroy;
		goto out;

	return 0;

out_gib_destroy:
	kvm_s390_gib_destroy();
out_debug_unreg:
	debug_unregister(kvm_s390_dbf);
out:
	kvm_arch_exit();
	return rc;
}