On 03/11/2012 10:12 AM, Gleb Natapov wrote:
On Sun, Mar 11, 2012 at 09:16:49AM -0500, Anthony Liguori wrote:
>> If libvirt assumes anything about what kvm actually supports it is
>> working only by sheer luck.
>
> Well the simple answer for libvirt is don't use -nodefconfig and
> then it can reuse the CPU definitions (including any that the user
> adds).
CPU models should be usable even with -nodefconfig. CPU model is more
like device. By -cpu Nehalem I am saying I want Nehalem device in my
machine.
Let's say we moved CPU definitions to /usr/share/qemu/cpu-models.xml.
Obviously, we'd want a command line option to be able to change that location so
we'd introduce -cpu-models PATH.
But we want all of our command line options to be settable by the global
configuration file so we would have a cpu-model=PATH to the configuration file.
But why hard code a path when we can just set the default path in the
configuration file so let's avoid hard coding and just put
cpu-models=/usr/share/qemu/cpu-models.xml in the default configuration file.
But now when libvirt uses -nodefconfig, those models go away. -nodefconfig
means start QEMU in the most minimal state possible. You get what you pay for
if you use it.
We'll have the same problem with machine configuration files. At some point in
time, -nodefconfig will make machine models disappear.
Regards,
Anthony Liguori