summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean Christopherson <seanjc@google.com>2021-11-11 05:07:35 +0300
committerPeter Zijlstra <peterz@infradead.org>2021-11-17 16:49:11 +0300
commit7b517831a1c6aceb0821860edb9c7bc7d4f803a2 (patch)
treeff4ace2e7b92e5dabeb67e5d97daa84160d54933
parent33271a9e2b52e07e278a67c900d2d2afb5c55bd5 (diff)
downloadlinux-7b517831a1c6aceb0821860edb9c7bc7d4f803a2.tar.xz
KVM: arm64: Convert to the generic perf callbacks
Drop arm64's version of the callbacks in favor of the callbacks provided by generic KVM, which are semantically identical. Signed-off-by: Sean Christopherson <seanjc@google.com> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Reviewed-by: Marc Zyngier <maz@kernel.org> Link: https://lore.kernel.org/r/20211111020738.2512932-15-seanjc@google.com
-rw-r--r--arch/arm64/kvm/perf.c34
1 files changed, 2 insertions, 32 deletions
diff --git a/arch/arm64/kvm/perf.c b/arch/arm64/kvm/perf.c
index dfa9bce8559e..374c496a3f1d 100644
--- a/arch/arm64/kvm/perf.c
+++ b/arch/arm64/kvm/perf.c
@@ -13,42 +13,12 @@
DEFINE_STATIC_KEY_FALSE(kvm_arm_pmu_available);
-static unsigned int kvm_guest_state(void)
-{
- struct kvm_vcpu *vcpu = kvm_get_running_vcpu();
- unsigned int state;
-
- if (!vcpu)
- return 0;
-
- state = PERF_GUEST_ACTIVE;
- if (!vcpu_mode_priv(vcpu))
- state |= PERF_GUEST_USER;
-
- return state;
-}
-
-static unsigned long kvm_get_guest_ip(void)
-{
- struct kvm_vcpu *vcpu = kvm_get_running_vcpu();
-
- if (WARN_ON_ONCE(!vcpu))
- return 0;
-
- return *vcpu_pc(vcpu);
-}
-
-static struct perf_guest_info_callbacks kvm_guest_cbs = {
- .state = kvm_guest_state,
- .get_ip = kvm_get_guest_ip,
-};
-
void kvm_perf_init(void)
{
- perf_register_guest_info_callbacks(&kvm_guest_cbs);
+ kvm_register_perf_callbacks(NULL);
}
void kvm_perf_teardown(void)
{
- perf_unregister_guest_info_callbacks(&kvm_guest_cbs);
+ kvm_unregister_perf_callbacks();
}