On 2013-12-17 12:31, Arthur Chunqi Li wrote:
> Hi Jan,
> 
> On Tue, Dec 17, 2013 at 7:21 PM, Jan Kiszka <jan.kis...@siemens.com> wrote:
>> On 2013-12-17 10:32, Arthur Chunqi Li wrote:
>>> Hi Jan and Paolo,
>>>
>>> I've tried to use preemption timer in KVM to trap vcpu regularly, but
>>> there's something unexpected. I run a VM with 4 vcpus and give them
>>> the same preemption timer value (e.g. 1000000) with all bits set
>>> (activate/save bits), then reset the value in preemption time-out
>>> handler.
>>>
>>> Thus I expected these vcpus trap regularly in some special turns. But
>>> I found that when the VM is not busy, some vcpus are trapped much less
>>> frequently than others. In Intel SDM, I noticed that preemption timer
>>> is only related to TSC, and I think all the vcpus should trap in a
>>> similar frequency.
>>>
>>> Could u help me explain this phenomenon?
>>
>> Are you on a CPU that has non-broken preemption timer support? Anything
>> prior Haswell is known to tick with arbitrary frequencies.
> 
> My CPU is Intel(R) Xeon(R) CPU  E5620  @ 2.40GHz.

Hmm, this one seems unaffected. Didn't find a "specification update".
Just like Paolo asked: Your original test case passes?

> 
> Besides, what do you mean by arbitrary frequencies?

On older CPUs, the tick rate of the preemption timer does not correlate
with the TSC, definitely not in the way the spec defined.

Back to your original question: Are we talking about native use of the
preemption timer via a patched KVM or nested use inside a KVM virtual
machine?

Jan

-- 
Siemens AG, Corporate Technology, CT RTC ITP SES-DE
Corporate Competence Center Embedded Linux
--
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