Received: by 2002:a25:b323:0:0:0:0:0 with SMTP id l35csp1797369ybj; Sun, 22 Sep 2019 12:08:50 -0700 (PDT) X-Google-Smtp-Source: APXvYqzodmd3sXkflbOTdnX/QR+Na76jDLancoGVQN/Kl5L4J7fm8zZH5BXHjArq8LwZWn3ZrL8T X-Received: by 2002:a17:906:49c7:: with SMTP id w7mr27861143ejv.167.1569179330457; Sun, 22 Sep 2019 12:08:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1569179330; cv=none; d=google.com; s=arc-20160816; b=tmKM7w8OKBdmNdz9J47Hz1wIIEn9zkqRtIstSjYgsfiptk1XgLrbLluEYvgDGAOCPB K8buEJ2gLCdccTvMibF1vz9ax9geWuQEwglVmlD4yjioaAdV1X+eRrXBSLN41oSU5d2E /kCMI7GLhqEHXN6jFmTBK01Ah639K4wbi7gr9l6gA0Ot4IRneZUL0wxkxLRLf+99G7uZ mRnCyXkYa0hXrl32891YhkWh7HXtMt8MtWBb7q2yvBePEA3TUWNfBOAHc840UtQf/XW+ wBp8SzvOhMt+ylvo3NLocQUpOU6hd4BSwpP1o2Ac4OiWKh5fgq97js0dheNutuNL24y2 RPgg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=+wFdLnsbdePc3RtOnwonh2CmzkZY+ExScUXMoxEGy2E=; b=HoHCDz6xRsZ9jcPVfGU9H/ciMSxu3o2G4EQBB/u11LQBPH0Lx482htXUb5fQ3XR80A S8TrlE3Xr/ASFMmKcSiHKcHbY8HnB5O9t2b8x0sQp+EuohHCdxMH0BTCJmuGfAVCzxdw YdtrG3zqJKzsOddaHNaS18Kw0jbOL618ZWzhUK882fAq7k1xawuahw74I11lJxY+kE9R 2HLhSzgHOJd/ygQ7BEBLt7RFmoM5tfgc/koTVtFV8cAEFjhU6J68y1KuDeMHG6hQpmDp CSNK7nvOVYpoD52PRbB45ss+Z2lqZZHNAaFLr9FWyLORkZroqZXi2BcrZwUNaTwVtBYe 0Z+g== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id p20si3608497eju.109.2019.09.22.12.08.26; Sun, 22 Sep 2019 12:08:50 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2393987AbfITV0E (ORCPT + 99 others); Fri, 20 Sep 2019 17:26:04 -0400 Received: from mx1.redhat.com ([209.132.183.28]:57986 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2392508AbfITVZO (ORCPT ); Fri, 20 Sep 2019 17:25:14 -0400 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 902C58980E5; Fri, 20 Sep 2019 21:25:13 +0000 (UTC) Received: from mail (ovpn-120-159.rdu2.redhat.com [10.10.120.159]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 5DA4C1001B2D; Fri, 20 Sep 2019 21:25:13 +0000 (UTC) From: Andrea Arcangeli To: Paolo Bonzini Cc: Vitaly Kuznetsov , "Dr. David Alan Gilbert" , Marcelo Tosatti , Peter Xu , kvm@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 13/17] KVM: monolithic: x86: drop the kvm_pmu_ops structure Date: Fri, 20 Sep 2019 17:25:05 -0400 Message-Id: <20190920212509.2578-14-aarcange@redhat.com> In-Reply-To: <20190920212509.2578-1-aarcange@redhat.com> References: <20190920212509.2578-1-aarcange@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.6.2 (mx1.redhat.com [10.5.110.67]); Fri, 20 Sep 2019 21:25:13 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Cleanup after this was finally left fully unused. Signed-off-by: Andrea Arcangeli --- arch/x86/include/asm/kvm_host.h | 3 --- arch/x86/kvm/pmu.h | 19 ------------------- arch/x86/kvm/pmu_amd.c | 15 --------------- arch/x86/kvm/svm.c | 1 - arch/x86/kvm/vmx/pmu_intel.c | 15 --------------- arch/x86/kvm/vmx/vmx.c | 2 -- 6 files changed, 55 deletions(-) diff --git a/arch/x86/include/asm/kvm_host.h b/arch/x86/include/asm/kvm_host.h index bd5f4f900288..000d4e5a5664 100644 --- a/arch/x86/include/asm/kvm_host.h +++ b/arch/x86/include/asm/kvm_host.h @@ -1160,9 +1160,6 @@ struct kvm_x86_ops { gfn_t offset, unsigned long mask); int (*write_log_dirty)(struct kvm_vcpu *vcpu); - /* pmu operations of sub-arch */ - const struct kvm_pmu_ops *pmu_ops; - /* * Architecture specific hooks for vCPU blocking due to * HLT instruction. diff --git a/arch/x86/kvm/pmu.h b/arch/x86/kvm/pmu.h index 09e80e8ee21a..513366c8b794 100644 --- a/arch/x86/kvm/pmu.h +++ b/arch/x86/kvm/pmu.h @@ -21,23 +21,6 @@ struct kvm_event_hw_type_mapping { #include "pmu_ops.h" -struct kvm_pmu_ops { - unsigned (*find_arch_event)(struct kvm_pmu *pmu, u8 event_select, - u8 unit_mask); - unsigned (*find_fixed_event)(int idx); - bool (*pmc_is_enabled)(struct kvm_pmc *pmc); - struct kvm_pmc *(*pmc_idx_to_pmc)(struct kvm_pmu *pmu, int pmc_idx); - struct kvm_pmc *(*msr_idx_to_pmc)(struct kvm_vcpu *vcpu, unsigned idx, - u64 *mask); - int (*is_valid_msr_idx)(struct kvm_vcpu *vcpu, unsigned idx); - bool (*is_valid_msr)(struct kvm_vcpu *vcpu, u32 msr); - int (*get_msr)(struct kvm_vcpu *vcpu, u32 msr, u64 *data); - int (*set_msr)(struct kvm_vcpu *vcpu, struct msr_data *msr_info); - void (*refresh)(struct kvm_vcpu *vcpu); - void (*init)(struct kvm_vcpu *vcpu); - void (*reset)(struct kvm_vcpu *vcpu); -}; - static inline u64 pmc_bitmask(struct kvm_pmc *pmc) { struct kvm_pmu *pmu = pmc_to_pmu(pmc); @@ -124,6 +107,4 @@ int kvm_vm_ioctl_set_pmu_event_filter(struct kvm *kvm, void __user *argp); bool is_vmware_backdoor_pmc(u32 pmc_idx); -extern struct kvm_pmu_ops intel_pmu_ops; -extern struct kvm_pmu_ops amd_pmu_ops; #endif /* __KVM_X86_PMU_H */ diff --git a/arch/x86/kvm/pmu_amd.c b/arch/x86/kvm/pmu_amd.c index 12d1fa3ba35a..0e01b48b3b0b 100644 --- a/arch/x86/kvm/pmu_amd.c +++ b/arch/x86/kvm/pmu_amd.c @@ -302,18 +302,3 @@ static void amd_pmu_reset(struct kvm_vcpu *vcpu) } #include "pmu_amd_ops.c" - -struct kvm_pmu_ops amd_pmu_ops = { - .find_arch_event = amd_find_arch_event, - .find_fixed_event = amd_find_fixed_event, - .pmc_is_enabled = amd_pmc_is_enabled, - .pmc_idx_to_pmc = amd_pmc_idx_to_pmc, - .msr_idx_to_pmc = amd_msr_idx_to_pmc, - .is_valid_msr_idx = amd_is_valid_msr_idx, - .is_valid_msr = amd_is_valid_msr, - .get_msr = amd_pmu_get_msr, - .set_msr = amd_pmu_set_msr, - .refresh = amd_pmu_refresh, - .init = amd_pmu_init, - .reset = amd_pmu_reset, -}; diff --git a/arch/x86/kvm/svm.c b/arch/x86/kvm/svm.c index 5a48beb58083..ca9fd1762519 100644 --- a/arch/x86/kvm/svm.c +++ b/arch/x86/kvm/svm.c @@ -7298,7 +7298,6 @@ static struct kvm_x86_ops svm_x86_ops __ro_after_init = { .sched_in = svm_sched_in, - .pmu_ops = &amd_pmu_ops, .deliver_posted_interrupt = svm_deliver_avic_intr, .dy_apicv_has_pending_interrupt = svm_dy_apicv_has_pending_interrupt, .update_pi_irte = svm_update_pi_irte, diff --git a/arch/x86/kvm/vmx/pmu_intel.c b/arch/x86/kvm/vmx/pmu_intel.c index bfa765842772..e7c1253f47a2 100644 --- a/arch/x86/kvm/vmx/pmu_intel.c +++ b/arch/x86/kvm/vmx/pmu_intel.c @@ -359,18 +359,3 @@ static void intel_pmu_reset(struct kvm_vcpu *vcpu) } #include "pmu_intel_ops.c" - -struct kvm_pmu_ops intel_pmu_ops = { - .find_arch_event = intel_find_arch_event, - .find_fixed_event = intel_find_fixed_event, - .pmc_is_enabled = intel_pmc_is_enabled, - .pmc_idx_to_pmc = intel_pmc_idx_to_pmc, - .msr_idx_to_pmc = intel_msr_idx_to_pmc, - .is_valid_msr_idx = intel_is_valid_msr_idx, - .is_valid_msr = intel_is_valid_msr, - .get_msr = intel_pmu_get_msr, - .set_msr = intel_pmu_set_msr, - .refresh = intel_pmu_refresh, - .init = intel_pmu_init, - .reset = intel_pmu_reset, -}; diff --git a/arch/x86/kvm/vmx/vmx.c b/arch/x86/kvm/vmx/vmx.c index 09e6a477e06f..ff46008dc514 100644 --- a/arch/x86/kvm/vmx/vmx.c +++ b/arch/x86/kvm/vmx/vmx.c @@ -7779,8 +7779,6 @@ static struct kvm_x86_ops vmx_x86_ops __ro_after_init = { .pre_block = vmx_pre_block, .post_block = vmx_post_block, - .pmu_ops = &intel_pmu_ops, - .update_pi_irte = vmx_update_pi_irte, #ifdef CONFIG_X86_64