Re: Questing regarding KVM Guest PMU

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 04/04/2012 01:29 PM, Gleb Natapov wrote:
> > >
> > ok. seems to be. will move over to perf as its working fine inside guest.
> > 
> Good riddance IMO. I managed to run it on a guest (but not on my
> host!). The thing is buggy. It does not use global ctrl MSR to enable
> counters and kvm has all of them disabled by default. I didn't find what
> value this MSR should have after reset, so this may be either kvm bug or
> real BIOSes enable all counters in global ctrl MSR for PMUv1
> compatibility. Doing "wrmsr 0x38f 0x70000000f" solves this problem. The
> second problem is that oprofile reprogram PMU counters without
> disabling them first and this is explicitly prohibited by Intel SDM.
> The patch below solve that, but oprofile is the one who should be fixed.

Both should be fixed, there may be other profilers affected.

>
> diff --git a/arch/x86/kvm/pmu.c b/arch/x86/kvm/pmu.c
> index a73f0c1..be05028 100644
> --- a/arch/x86/kvm/pmu.c
> +++ b/arch/x86/kvm/pmu.c
> @@ -396,6 +396,7 @@ int kvm_pmu_set_msr(struct kvm_vcpu *vcpu, u32 index, u64 data)
>  				(pmc = get_fixed_pmc(pmu, index))) {
>  			data = (s64)(s32)data;
>  			pmc->counter += data - read_pmc(pmc);
> +			reprogram_gp_counter(pmc, pmc->eventsel);
>  			return 0;
>  		} else if ((pmc = get_gp_pmc(pmu, index, MSR_P6_EVNTSEL0))) {
>  			if (data == pmc->eventsel)
>

-- 
error compiling committee.c: too many arguments to function

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux