On Tue, Mar 27, 2012 at 15:07:44 -0500, Doug Goldstein wrote:
My XML configs for my VM machines have it set to AMD Opteron G3s,
but
libvirt is creating QEMU with a core2duo. This is not correct at all.
I've included the setup and config of one machine that does this. But
another machine that does this matches danpb's AMD Quad Core Dual NUMA
system he posted on the mailing list recently. That machine is using a
stock qemu-0.15.1 from upstream's git and libvirt git a few commits
shy of the 0.9.11 rc1. The machine below is using libvirt 0.9.10 and
qemu-kvm-1.0.
This is something we are currently working on with qemu community. The problem
is that libvirt starts qemu in a way (-nodefconfig) that prevents it from
reading the file that defines all modern CPU models. Try qemu -cpu ? vs.
qemu -nodefconfig -cpu ? and you will see that quite a few CPU models just
disappear. And since the new models (Opteron_G3 in your case) is not known to
qemu when run by libvirt, libvirt transforms it into a model that qemu knows,
i.e., core2duo and a bunch of additional features. So the guest will actually
see a CPU that supports all features which Opteron_G3 supports.
More about this issue can be found in a huge thread "Modern CPU models cannot
be used with libvirt" which started in December but most of it has been
discussed in March, starting with
https://www.redhat.com/archives/libvir-list/2012-March/msg00416.html
Jirka