• Sean Christopherson's avatar
    KVM: SVM: Use asm goto to handle unexpected #UD on SVM instructions · 35a78319
    Sean Christopherson authored
    Add svm_asm*() macros, a la the existing vmx_asm*() macros, to handle
    faults on SVM instructions instead of using the generic __ex(), a.k.a.
    __kvm_handle_fault_on_reboot().  Using asm goto generates slightly
    better code as it eliminates the in-line JMP+CALL sequences that are
    needed by __kvm_handle_fault_on_reboot() to avoid triggering BUG()
    from fixup (which generates bad stack traces).
    
    Using SVM specific macros also drops the last user of __ex() and the
    the last asm linkage to kvm_spurious_fault(), and adds a helper for
    VMSAVE, which may gain an addition call site in the future (as part
    of optimizing the SVM context switching).
    Signed-off-by: default avatarSean Christopherson <seanjc@google.com>
    Message-Id: <20201231002702.22237077-8-seanjc@google.com>
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    35a78319
svm.c 122 KB