]> git.baikalelectronics.ru Git - kernel.git/commit
KVM: x86: Trace all APICv inhibit changes and capture overall status
authorSean Christopherson <seanjc@google.com>
Fri, 11 Mar 2022 04:35:17 +0000 (04:35 +0000)
committerPaolo Bonzini <pbonzini@redhat.com>
Sat, 2 Apr 2022 09:34:45 +0000 (05:34 -0400)
commitbc691fca4628986433b1f930abc0bbdf1a550d17
tree4eb550737f2aed2802f689c472a3fecd79539e9a
parent20c34f7bf46463bf787bc24e9db920d3b397210b
KVM: x86: Trace all APICv inhibit changes and capture overall status

Trace all APICv inhibit changes instead of just those that result in
APICv being (un)inhibited, and log the current state.  Debugging why
APICv isn't working is frustrating as it's hard to see why APICv is still
inhibited, and logging only the first inhibition means unnecessary onion
peeling.

Opportunistically drop the export of the tracepoint, it is not and should
not be used by vendor code due to the need to serialize toggling via
apicv_update_lock.

Note, using the common flow means kvm_apicv_init() switched from atomic
to non-atomic bitwise operations.  The VM is unreachable at init, so
non-atomic is perfectly ok.

Signed-off-by: Sean Christopherson <seanjc@google.com>
Message-Id: <20220311043517.17027-4-seanjc@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/trace.h
arch/x86/kvm/x86.c