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/

