On Tue, Oct 23, 2012 at 02:36:05PM +0200, Peter Zijlstra wrote:
> On Thu, 2012-10-18 at 16:19 -0700, Andi Kleen wrote:
> > From: Andi Kleen <[email protected]>
> > 
> > This is not arch perfmon, but older CPUs will just ignore it. This makes
> > it possible to do at least some TSX measurements from a KVM guest
> 
> Please, always CC people who wrote the code as well, in this case that's
> Gleb.
> 
Yes, I missed the v2. Thanks Peter.

> > Cc: [email protected]
> > v2: Various fixes to address review feedback
> > Signed-off-by: Andi Kleen <[email protected]>
> > ---
> >  arch/x86/kvm/pmu.c |   15 +++++++++++----
> >  1 files changed, 11 insertions(+), 4 deletions(-)
> > 
> > diff --git a/arch/x86/kvm/pmu.c b/arch/x86/kvm/pmu.c
> > index cfc258a..81c1632 100644
> > --- a/arch/x86/kvm/pmu.c
> > +++ b/arch/x86/kvm/pmu.c
> 
> > @@ -173,6 +173,11 @@ static void reprogram_counter(struct kvm_pmc *pmc, u32 
> > type,
> >             .exclude_kernel = exclude_kernel,
> >             .config = config,
> >     };
> > +   /* Will be ignored on CPUs that don't support this. */
> > +   if (intx)
> > +           attr.config |= HSW_INTX;
> > +   if (intx_cp)
> > +           attr.config |= HSW_INTX_CHECKPOINTED;
> >  
> >     attr.sample_period = (-pmc->counter) & pmc_bitmask(pmc);
> >  
> 
> So I forgot how all this worked, but will the KVM emulation not pass
> this straight down to the hardware?
KVM PMU emulation does not talk to HW directly. It creates perf_event to
emulate PMU counter. As far as I see those two will be dropped by
hsw_hw_config() if host HW does not support them.


> 
> Don't we have a problem where we're emulating arch perfmon v1 on AMD
> hardware? On AMD hardware those bits do have meaning.
PMU emulation does not support AMD yet.

--
                        Gleb.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to