On 12/08/20 07:07, Like Xu wrote: > To emulate PMC counter for guest, KVM would create an > event on the host with 'exclude_guest=0, exclude_hv=0' > which simply makes no sense and is utterly broken. > > To keep perf semantics consistent, any event created by > pmc_reprogram_counter() should both set exclude_hv and > exclude_host in the KVM context. > > Message-ID: <20200811084548.GW3982@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx> > Signed-off-by: Like Xu <like.xu@xxxxxxxxxxxxxxx> > --- > arch/x86/kvm/pmu.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/arch/x86/kvm/pmu.c b/arch/x86/kvm/pmu.c > index 67741d2a0308..6a30763a10d7 100644 > --- a/arch/x86/kvm/pmu.c > +++ b/arch/x86/kvm/pmu.c > @@ -108,6 +108,7 @@ static void pmc_reprogram_counter(struct kvm_pmc *pmc, u32 type, > .exclude_host = 1, > .exclude_user = exclude_user, > .exclude_kernel = exclude_kernel, > + .exclude_hv = 1, > .config = config, > }; > > x86 does not have a hypervisor privilege level, so it never uses exclude_hv; exclude_host already excludes all root mode activity for both ring0 and ring3. Paolo