On Mon, Jan 30, 2012 at 17:25:19 +0100, Martin Kletzander wrote:
In qemu there are 2 cpu models (cpu64-rhel5 and cpu64-rhel6) not
supported by libvirt. This patch adds the support with the flags
specifications from /usr/share/qemu-kvm/cpu-model/cpu-x86_64.conf
Hmm, I didn't actually look at the model definitions until now... I haven't
checked them with qemu sources, but the definitions look weird.
diff --git a/src/cpu/cpu_map.xml b/src/cpu/cpu_map.xml
index 693caf1..8c9da42 100644
--- a/src/cpu/cpu_map.xml
+++ b/src/cpu/cpu_map.xml
@@ -327,6 +327,72 @@
<feature name='svm'/>
</model>
+ <model name='cpu64-rhel5'>
+ <vendor name='AMD'/>
+ <feature name='3dnow'/>
+ <feature name='3dnowext'/>
...
+ <feature name='svm'/>
...
+ </model>
Why are these virtual models marked as made by AMD and why do they contain
those AMD-only features? The vendor is probably not a big deal, libvirt will
just avoid using these models for describing a host CPU which is not made by
AMD. However, the AMD-only features make these models incompatible with any
Intel CPU. Thus the following guest CPU element
<cpu match='exact'>
<model>cpu64-rhel?</model>
<feature name='3dnow' policy='disable'/>
<feature name='3dnowext' policy='disable'/>
<feature name='svm' policy='disable'/>
</cpu>
will be needed to use this model on Intel host. Are these features in fact
emulated by qemu even if host CPU doesn't support them?
Jirka