[libvirt] libvirt and "kvm -cpu=qemu32" problem

Daniel P. Berrange berrange at redhat.com
Fri Aug 28 09:37:44 UTC 2009


On Fri, Aug 28, 2009 at 12:30:14PM +0400, Scaldov M.V. wrote:
> Problem is that the images of windows 2003 server, windows 2000 and
> some other do not start and go to BSOD due to processor mismatch if
> they were created under either qemu or vmware, or from
> bare-metal installed OS.
> 
> By default libvirt starts kvm with "-cpu=qemu32" option instead of, for
> example, "-cpu=pentium3".
> 
> There is patch for libvirt-0.6.5 to avoid this problem.
> Now libvirt takes into account <cpumodel> node from .xml domain config,
> which overrides libvirt's default -cpu option for kvm.
> 
> I think, this patch is vital, because of it helps to avoid a waste of
> time with reinstalling and reconfiguring windows server images.
> 
> <domain type='kvm'>
>   <name>w2k3s</name>
>   <uuid>e2725d10-7ada-4f71-eea7-fa6cc1a541ee</uuid>
>   <memory>262144</memory>
>   <currentMemory>262144</currentMemory>
>   <vcpu>1</vcpu>
>   <cpumodel>pentium3</cpumodel>			<------
>   <os>
>     <type arch='i686'>hvm</type>
>     <boot dev='hd'/>
>   </os>

We definitely need to support configuration of the CPU model, but things
are a little more complex than just setting a model name. QEMU allows for
a model name, along with ability to set named flags to turn on or off
features from the model. Xen and VMWare both allow for setting a fully
CPUID bitmask. We're still trying i figure out how to reconcile this
into an XML format



Daniel
-- 
|: Red Hat, Engineering, London   -o-   http://people.redhat.com/berrange/ :|
|: http://libvirt.org  -o-  http://virt-manager.org  -o-  http://ovirt.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505  -o-  F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|




More information about the libvir-list mailing list