• Sean Christopherson's avatar
    KVM: s390: Unwind kvm_arch_init() piece-by-piece() if a step fails · b801ef42
    Sean Christopherson authored
    In preparation for folding kvm_arch_hardware_setup() into kvm_arch_init(),
    unwind initialization one step at a time instead of simply calling
    kvm_arch_exit().  Using kvm_arch_exit() regardless of which initialization
    step failed relies on all affected state playing nice with being undone
    even if said state wasn't first setup.  That holds true for state that is
    currently configured by kvm_arch_init(), but not for state that's handled
    by kvm_arch_hardware_setup(), e.g. calling gmap_unregister_pte_notifier()
    without first registering a notifier would result in list corruption due
    to attempting to delete an entry that was never added to the list.
    Signed-off-by: default avatarSean Christopherson <seanjc@google.com>
    Reviewed-by: default avatarEric Farman <farman@linux.ibm.com>
    Message-Id: <20221130230934.1014142-6-seanjc@google.com>
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    b801ef42
kvm-s390.c 156 KB