B.3. The guest virtual machine cannot be started: internal error guest CPU is not compatible with host CPU
- Running on an Intel Core i7 processor (which virt-manager refers to as
Nehalem, or the older Core 2 Duo, referred to as
Penryn), a KVM guest (or domain) is created using virt-manager. After installation, the guest's processor is changed to match the host's CPU. The guest is then unable to start and reports this error:
2012-02-06 17:49:15.985+0000: 20757: error : qemuBuildCpuArgStr:3565 : internal error guest CPU is not compatible with host CPUAdditionally, clicking
Copy host CPU configurationin virt-manager shows Pentium III instead of
/usr/share/libvirt/cpu_map.xmlfile lists the flags that define each CPU model. The
Penryndefinitions contain this:
<feature name='nx'/>As a result, the
No eXecute) flag needs to be presented to identify the CPU as
Penryn. However, in
/proc/cpuinfo, this flag is missing.
- Nearly all new BIOSes allow enabling or disabling of the
No eXecutebit. However, if disabled, some CPUs do not report this flag and thus libvirt detects a different CPU. Enabling this functionality instructs libvirt to report the correct CPU. Refer to your hardware documentation for further instructions on this subject.