On 08/20/2012 07:15 AM, Yan, Zheng wrote: > On 08/19/2012 05:55 PM, Avi Kivity wrote: >> On 08/17/2012 09:56 AM, Peter Zijlstra wrote: >>> On Fri, 2012-08-17 at 09:40 +0800, Yan, Zheng wrote: >>>> >>>> Peter, do I need to submit a patch disables uncore on virtualized CPU? >>>> >>> I think Avi prefers the method where KVM 'fakes' the MSRs and we have to >>> detect if the MSRs actually work or not. >> >> s/we have/we don't have/. >> >>> >>> If you're willing to have a go at that, please do so. If you're not sure >>> how to do the KVM part, I'm sure Avi and/or Gleb can help you out. >> >> Certainly, please see kvm_pmu_get_msr() and kvm_pmu_set_msr(). >> >> The approach is that if an msr write can be emulated correctly (for >> example, it disables a counter) then we let it proceed; if it cannot be >> emulated correctly (for example it enables a counter that we cannot >> emulate), then we ignore it, but print out a message that tells the user >> that we're faking something that may cause the guest to malfunction. >> > > There is only one kvm_pmu structure in struct kvm_vcpu_arch, but the uncore > driver may define dozens of PMUs. Besides the uncore PMUs make extensive use > of extra registers, I don't think we can store these information in kvm_pmu > structure. We don't need to store any information, just respond to those MSRs (and ignore them). > The uncore pmu collects system-wide events on a given socket, it may not be > possible to be simulated by virtualized CPU. I think it's better to just > disable uncore on virtualized CPU. That only works for Linux guests. -- 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