On 06/22/10 03:49, Zhang, Yanmin wrote:
> On Mon, 2010-06-21 at 14:45 +0300, Avi Kivity wrote:
>>   Since the guest can use NMI to read the 
>> counter, it should have the highest possible priority, and thus it 
>> shouldn't see any overflow unless it configured the threshold really low.
>>
>> If we drop overflow, we can use the RDPMC instruction instead of 
>> KVM_PERF_OP_READ.  This allows the guest to allow userspace to read a 
>> counter, or prevent userspace from reading the counter, by setting cr4.pce.
> 1) para virt perf interface is to hide PMU hardware in host os. Guest os 
> shouldn't
> access PMU hardware directly. We could expose PMU hardware to guest os 
> directly, but
> that would be another guest os PMU support method. It shouldn't be a part of 
> para virt
> interface.
> 2) Consider below scenario: PMU counter overflows and NMI causes guest os 
> vmexit to
> host kernel. Host kernel schedules the vcpu thread to another physical cpu 
> before
> vmenter the guest os again. So later on, guest os just RDPMC the counter on 
> another
> cpu.
> 
> So I think above discussion is around how to expose PMU hardware to guest os. 
> I will
> also check this method after the para virt interface is done.

You should be able to expose the counters as read-only to the guest. KVM
allows you to specify whether or not a guest has read, write or
read/write access. If you allowed read access of the counters that would
safe a fair bit of hyper calls.

Question is if it is safe to drop overflow support?

Cheers,
Jes

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

Reply via email to