Hi, This patch set is essentially triggered by Jim's patch set[1] (especially patch 01 and 04). The new idea to set up and maintain pmc->eventsel for fixed counters. This would unify all fixed/gp code logic based on the same semantics "pmc->eventse". (I demonstrated this in patch 01-03, more can be done) [1] https://lore.kernel.org/kvm/96170437-1e00-7841-260e-39d181e7886d@xxxxxxxxx/T/#t Please check each commit message for more details and let me know if there is any room for improvement, Thanks. Like Xu (4): KVM: x86/pmu: Setup pmc->eventsel for fixed PMCs KVM: x86/pmu: Refactoring find_arch_event() to find_perf_hw_id() KVM: x86/pmu: Reuse find_perf_hw_id() and drop find_fixed_event() KVM: x86/pmu: Refactoring kvm_perf_overflow{_intr}() arch/x86/kvm/pmu.c | 74 ++++++++++++++++++------------------ arch/x86/kvm/pmu.h | 4 +- arch/x86/kvm/svm/pmu.c | 19 ++++----- arch/x86/kvm/vmx/pmu_intel.c | 54 +++++++++++++++++--------- 4 files changed, 83 insertions(+), 68 deletions(-) -- 2.33.1