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 :|