• Thomas Gleixner's avatar
    x86/kvm/svm: Add hardirq tracing on guest enter/exit · 9fc975e9
    Thomas Gleixner authored
    Entering guest mode is more or less the same as returning to user
    space. From an instrumentation point of view both leave kernel mode and the
    transition to guest or user mode reenables interrupts on the host. In user
    mode an interrupt is served directly and in guest mode it causes a VM exit
    which then handles or reinjects the interrupt.
    
    The transition from guest mode or user mode to kernel mode disables
    interrupts, which needs to be recorded in instrumentation to set the
    correct state again.
    
    This is important for e.g. latency analysis because otherwise the execution
    time in guest or user mode would be wrongly accounted as interrupt disabled
    and could trigger false positives.
    
    Add hardirq tracing to guest enter/exit functions in the same way as it
    is done in the user mode enter/exit code, respecting the RCU requirements.
    Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
    Reviewed-by: default avatarAlexandre Chartre <alexandre.chartre@oracle.com>
    Acked-by: default avatarPeter Zijlstra <peterz@infradead.org>
    Acked-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    
    Message-Id: <20200708195321.934715094@linutronix.de>
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    9fc975e9
svm.c 109 KB