virt-manager/virtinst-dont-use-special-copy-cpu-features.patch
2018-03-13 15:09:20 +00:00

37 lines
1.7 KiB
Diff

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-1.5.0/virtinst/cpu.py
===================================================================
--- virt-manager-1.5.0.orig/virtinst/cpu.py
+++ virt-manager-1.5.0/virtinst/cpu.py
@@ -98,12 +98,16 @@ class CPU(XMLBuilder):
SPECIAL_MODE_HOST_PASSTHROUGH, SPECIAL_MODE_CLEAR]
def set_special_mode(self, 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
for f in self.features:
self.remove_feature(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_HOST_COPY:
self.copy_host_cpu()