s/tagged/tag On Mon, Nov 08, 2021, Like Xu wrote: > From: Like Xu <likexu@xxxxxxxxxxx> > > The pmu_ops should be moved to kvm_x86_init_ops and tagged as __initdata. State what the patch does, not what "should" be done. Now that pmu_ops is copied by value during kvm_arch_hardware_setup(), move the pointer to kvm_x86_init_ops and tag implementations as __initdata to make the implementations unreachable once KVM is loaded, e.g. to make it harder to sneak in post-init modification bugs. > That'll save those precious few bytes, and more importantly make > the original ops unreachable, i.e. make it harder to sneak in post-init > modification bugs. > > Suggested-by: Sean Christopherson <seanjc@xxxxxxxxxx> > Signed-off-by: Like Xu <likexu@xxxxxxxxxxx> > --- > arch/x86/include/asm/kvm_host.h | 4 ++-- > arch/x86/kvm/svm/pmu.c | 2 +- > arch/x86/kvm/svm/svm.c | 2 +- > arch/x86/kvm/vmx/pmu_intel.c | 2 +- > arch/x86/kvm/vmx/vmx.c | 2 +- > arch/x86/kvm/x86.c | 2 +- > 6 files changed, 7 insertions(+), 7 deletions(-) > > diff --git a/arch/x86/include/asm/kvm_host.h b/arch/x86/include/asm/kvm_host.h > index c2d4ee2973c5..00760a3ac88c 100644 > --- a/arch/x86/include/asm/kvm_host.h > +++ b/arch/x86/include/asm/kvm_host.h > @@ -1436,8 +1436,7 @@ struct kvm_x86_ops { > int cpu_dirty_log_size; > void (*update_cpu_dirty_logging)(struct kvm_vcpu *vcpu); > > - /* pmu operations of sub-arch */ > - const struct kvm_pmu_ops *pmu_ops; > + /* nested operations of sub-arch */ No need for the new comment. > const struct kvm_x86_nested_ops *nested_ops; > > /* Nits aside, Reviewed-by: Sean Christopherson <seanjc@xxxxxxxxxx> I'd also be a-ok squashing this with the copy-by-value patch.