[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] target-i386: kvm: cache KVM_GET_SUPPORTED_CPUID
From: |
Chao Peng |
Subject: |
Re: [Qemu-devel] [PATCH] target-i386: kvm: cache KVM_GET_SUPPORTED_CPUID data |
Date: |
Tue, 14 Jun 2016 16:31:37 +0800 |
User-agent: |
Mutt/1.5.23 (2014-03-12) |
On Tue, Jun 14, 2016 at 10:21:41AM +0200, Paolo Bonzini wrote:
>
>
> On 14/06/2016 07:01, Chao Peng wrote:
> >> >
> >> > Which are the CPUID leaves for which KVM_GET_SUPPORTED_CPUID is not
> >> > stateless? I cannot find any.
> > I have though leaf 0xd, sub leaf 1 is not stateless, as the size of
> > xsave buffer(EBX) is based on XCR0 | IA32_XSS. But after looking KVM
> > code more carefully, seems I was wrong. The code calculates EBX with the
> > host xcr0 but not guest xcr0, nor guest IA32_XSS (not sure if this is
> > the correct behavior), so it can always returns constant data on a
> > certain machine.
>
> Indeed, KVM computes the correct value at runtime, but
> KVM_GET_SUPPORTED_CPUID runs before there is a value for guest XCR0 or
> guest IA32_XSS.
Yes, this is the point.
>
> Thanks, I've queued the patch for QEMU 2.7.
Thanks :)
Chao