Thread (4 messages) 4 messages, 3 authors, 2012-05-01

Re: [Xen-devel] x86info: dump kvm cpuid's

From: Ian Campbell <hidden>
Date: 2012-05-01 10:29:04
Also in: kvm, xen-devel

On Mon, 2012-04-30 at 10:38 +0100, Michael S. Tsirkin wrote:
On Mon, Apr 30, 2012 at 11:43:19AM +0300, Gleb Natapov wrote:
quoted
On Sun, Apr 29, 2012 at 01:10:21PM +0300, Michael S. Tsirkin wrote:
quoted
The following makes 'x86info -r' dump kvm cpu ids
(signature+features) when running in a vm.

On the guest we see the signature and the features:
eax in: 0x40000000, eax = 00000000 ebx = 4b4d564b ecx = 564b4d56 edx = 0000004d
eax in: 0x40000001, eax = 0100007b ebx = 00000000 ecx = 00000000 edx = 00000000

On the host it just adds a couple of zero lines:
eax in: 0x40000000, eax = 00000000 ebx = 00000000 ecx = 00000000 edx = 00000000
eax in: 0x40000001, eax = 00000000 ebx = 00000000 ecx = 00000000 edx = 00000000
This is too KVM specific.
That's what I have. I scratch my own itch.
quoted
Other hypervisors may use more cpuid leafs.
But not less so no harm's done.
quoted
As far as I see Hyper-V uses 5 and use cpuid.0x40000000.eax as max cpuid
leaf available. Haven't checked Xen or VMWare.
Xen does the same, documentation in the Xen public interfaces header:
http://xenbits.xen.org/docs/unstable/hypercall/include,public,arch-x86,cpuid.h.html.

If compat mode for another h/v is enabled then those leaves will appear
at 0x40000000 and Xen's will be bumped up, so a fully Xen aware set of
drivers (or detection routine, etc) should check at 0x100 intervals
until 0x40010000 for the appropriate signatures (I realise that the docs
are somewhat lacking in this regard, I should cook up a patch).

Ian.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help