Show Table of Contents
B.3. The guest virtual machine cannot be started: internal error guest CPU is not compatible with host CPU
- Symptom
- Running on an Intel Core i7 processor (which virt-manager refers to as
Nehalem, or the older Core 2 Duo, referred to asPenryn), 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 CPU
Additionally, clickingCopy host CPU configurationin virt-manager shows Pentium III instead ofNehalemorPenryn. - Investigation
- The
/usr/share/libvirt/cpu_map.xmlfile lists the flags that define each CPU model. TheNehalemandPenryndefinitions contain this:<feature name='nx'/>
As a result, theNX(orNo eXecute) flag needs to be presented to identify the CPU asNehalemorPenryn. However, in/proc/cpuinfo, this flag is missing. - Solution
- 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.

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.