On Mon, Nov 08, 2021, Like Xu wrote: > From: Like Xu <likexu@xxxxxxxxxxx> > > Replace the kvm_pmu_ops pointer in common x86 with an instance of the > struct to save one pointer dereference when invoking functions. Copy the > struct by value to set the ops during kvm_init(). > > Signed-off-by: Like Xu <likexu@xxxxxxxxxxx> > --- > arch/x86/kvm/pmu.c | 41 ++++++++++++++++++++++------------------- > arch/x86/kvm/pmu.h | 4 +++- > arch/x86/kvm/x86.c | 1 + > 3 files changed, 26 insertions(+), 20 deletions(-) > > diff --git a/arch/x86/kvm/pmu.c b/arch/x86/kvm/pmu.c > index aa6ac9c7aff2..353989bf0102 100644 > --- a/arch/x86/kvm/pmu.c > +++ b/arch/x86/kvm/pmu.c > @@ -47,6 +47,9 @@ > * * AMD: [0 .. AMD64_NUM_COUNTERS-1] <=> gp counters > */ > > +struct kvm_pmu_ops kvm_pmu_ops __read_mostly; > +EXPORT_SYMBOL_GPL(kvm_pmu_ops); This export isn't necessary.