File virtinst-dont-use-special-copy-cpu-features.patch of Package virt-manager

References: bsc#1067018 - L3: KVM Guest creation failed - Property .cmt not found

Some hardware has the .cmt cpu feature but qemu doesn't support it. libvirt
includes it in the cpu capabilities read in by virt-manager. Using 'host-model'
was known to have issues in the past and so a copy method was set up to
manually copy cpu features one at a time (including the unsupported cmt flag).
This patch simply avoids the special copy feature when "Copy host CPU definition"
is set in the Preferences -> New VM -> CPU Default pop-up menu and falls
back to using 'host-model'.

It should be noted that selecting "Customize configuration before install"
and "CPUs" -> "Copy host CPU definition" also inserts 'host-model' so
this change mirrors what is already done there.

Index: virt-manager-4.1.0/virtinst/domain/cpu.py
===================================================================
--- virt-manager-4.1.0.orig/virtinst/domain/cpu.py
+++ virt-manager-4.1.0/virtinst/domain/cpu.py
@@ -295,7 +295,8 @@ class DomainCpu(XMLBuilder):
             log.debug("Using default cpu mode=%s", val)
 
         if (val == self.SPECIAL_MODE_HOST_MODEL or
-            val == self.SPECIAL_MODE_HOST_PASSTHROUGH):
+            val == self.SPECIAL_MODE_HOST_PASSTHROUGH or
+            val == self.SPECIAL_MODE_HOST_COPY):
             self.model = None
             self.vendor = None
             self.model_fallback = None
@@ -303,6 +304,9 @@ class DomainCpu(XMLBuilder):
             self.check = None
             for f in self.features:
                 self.remove_child(f)
+            if val == self.SPECIAL_MODE_HOST_COPY:
+                val = self.SPECIAL_MODE_HOST_MODEL
+                self.match = "exact"
             self.mode = val
         elif (val == self.SPECIAL_MODE_HV_DEFAULT or
               val == self.SPECIAL_MODE_CLEAR):
openSUSE Build Service is sponsored by