yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #96371
[Bug 2122022] [NEW] live migrate failed
Public bug reported:
Description:
In Openstack antelope, cpu_mode and cpu_models are not explicitly
declared in nova.conf. A virtual machine is created and runs on Host A.
The CPU features of Host A include xsaves:
root@controller-2:~# lscpu | grep Flags
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb cat_l3 cdp_l3 invpcid_single intel_ppin ssbd mba ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid cqm mpx rdt_a avx512f avx512dq rdseed adx smap clflushopt clwb intel_pt avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local dtherm ida arat pln pts hwp hwp_act_window hwp_epp hwp_pkg_req pku ospke avx512_vnni md_clear flush_l1d arch_capabilities
However, the virtual machine’s CPU type is Cascadelake-Server, which
does not include the CPU feature xsaves:
root@controller-2:~# virsh dumpxml instance-00000515 | grep "cpu mode" -A40
<cpu mode='custom' match='exact' check='full'>
<model fallback='forbid'>Cascadelake-Server</model>
<vendor>Intel</vendor>
<topology sockets='8' dies='1' cores='1' threads='1'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='vmx'/>
<feature policy='require' name='pdcm'/>
<feature policy='require' name='hypervisor'/>
<feature policy='require' name='tsc_adjust'/>
<feature policy='require' name='umip'/>
<feature policy='require' name='pku'/>
<feature policy='require' name='md-clear'/>
<feature policy='require' name='stibp'/>
<feature policy='require' name='arch-capabilities'/>
<feature policy='require' name='xsaves'/>
<feature policy='require' name='ibpb'/>
<feature policy='require' name='ibrs'/>
<feature policy='require' name='amd-stibp'/>
<feature policy='require' name='amd-ssbd'/>
<feature policy='require' name='rdctl-no'/>
<feature policy='require' name='ibrs-all'/>
<feature policy='require' name='skip-l1dfl-vmentry'/>
<feature policy='require' name='mds-no'/>
<feature policy='require' name='pschange-mc-no'/>
<feature policy='require' name='tsx-ctrl'/>
<feature policy='disable' name='hle'/>
<feature policy='disable' name='rtm'/>
<feature policy='disable' name='mpx'/>
</cpu>
When the virtual machine is live-migrated to target Host B(B has same
CPU with A), an error occurs during CPU compatibility checks. The log
reports the following error:
nova.exception.InvalidCPUInfo: Configured CPU model: Cascadelake-Server
is not compatible with host CPU. Please correct your config and try
again. Unacceptable CPU info: CPU doesn't have compatibility.
Debugging reveals that the issue is due to the missing xsaves feature:
[root@controller-1 home]# virsh hypervisor-cpu-compare test.xml --error
error: Failed to compare hypervisor CPU with test.xml
error: the CPU is incompatible with host CPU: Host CPU does not provide required features: xsaves
Preliminary code analysis shows that when a virtual machine is created
using the host-model method, the instance.vcpu_model.model property of
the instance object is empty. This causes the code to use the physical
CPU features of the host where the virtual machine resides (Host A) and
compare them with the hypervisor of the target host (Host B) using the
compare_hypervisor_cpu function, resulting in the error.
if not instance.vcpu_model or not instance.vcpu_model.model:
source_cpu_info = src_compute_info['cpu_info']
self._compare_cpu(None, source_cpu_info, instance)
** Affects: nova
Importance: Undecided
Status: New
** Description changed:
- BUG Description:
+ Description:
In Openstack antelope, cpu_mode and cpu_models are not explicitly
declared in nova.conf. A virtual machine is created and runs on Host A.
The CPU features of Host A include xwaves:
- root@controller-2:~# lscpu | grep Flags
- Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb cat_l3 cdp_l3 invpcid_single intel_ppin ssbd mba ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid cqm mpx rdt_a avx512f avx512dq rdseed adx smap clflushopt clwb intel_pt avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local dtherm ida arat pln pts hwp hwp_act_window hwp_epp hwp_pkg_req pku ospke avx512_vnni md_clear flush_l1d arch_capabilities
+ root@controller-2:~# lscpu | grep Flags
+ Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb cat_l3 cdp_l3 invpcid_single intel_ppin ssbd mba ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid cqm mpx rdt_a avx512f avx512dq rdseed adx smap clflushopt clwb intel_pt avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local dtherm ida arat pln pts hwp hwp_act_window hwp_epp hwp_pkg_req pku ospke avx512_vnni md_clear flush_l1d arch_capabilities
However, the virtual machine’s CPU type is Cascadelake-Server, which
does not include the CPU feature xwaves:
- root@controller-2:~# virsh dumpxml instance-00000515 | grep "cpu mode" -A40
- <cpu mode='custom' match='exact' check='full'>
- <model fallback='forbid'>Cascadelake-Server</model>
- <vendor>Intel</vendor>
- <topology sockets='8' dies='1' cores='1' threads='1'/>
- <feature policy='require' name='ss'/>
- <feature policy='require' name='vmx'/>
- <feature policy='require' name='pdcm'/>
- <feature policy='require' name='hypervisor'/>
- <feature policy='require' name='tsc_adjust'/>
- <feature policy='require' name='umip'/>
- <feature policy='require' name='pku'/>
- <feature policy='require' name='md-clear'/>
- <feature policy='require' name='stibp'/>
- <feature policy='require' name='arch-capabilities'/>
- <feature policy='require' name='xsaves'/>
- <feature policy='require' name='ibpb'/>
- <feature policy='require' name='ibrs'/>
- <feature policy='require' name='amd-stibp'/>
- <feature policy='require' name='amd-ssbd'/>
- <feature policy='require' name='rdctl-no'/>
- <feature policy='require' name='ibrs-all'/>
- <feature policy='require' name='skip-l1dfl-vmentry'/>
- <feature policy='require' name='mds-no'/>
- <feature policy='require' name='pschange-mc-no'/>
- <feature policy='require' name='tsx-ctrl'/>
- <feature policy='disable' name='hle'/>
- <feature policy='disable' name='rtm'/>
- <feature policy='disable' name='mpx'/>
- </cpu>
+ root@controller-2:~# virsh dumpxml instance-00000515 | grep "cpu mode" -A40
+ <cpu mode='custom' match='exact' check='full'>
+ <model fallback='forbid'>Cascadelake-Server</model>
+ <vendor>Intel</vendor>
+ <topology sockets='8' dies='1' cores='1' threads='1'/>
+ <feature policy='require' name='ss'/>
+ <feature policy='require' name='vmx'/>
+ <feature policy='require' name='pdcm'/>
+ <feature policy='require' name='hypervisor'/>
+ <feature policy='require' name='tsc_adjust'/>
+ <feature policy='require' name='umip'/>
+ <feature policy='require' name='pku'/>
+ <feature policy='require' name='md-clear'/>
+ <feature policy='require' name='stibp'/>
+ <feature policy='require' name='arch-capabilities'/>
+ <feature policy='require' name='xsaves'/>
+ <feature policy='require' name='ibpb'/>
+ <feature policy='require' name='ibrs'/>
+ <feature policy='require' name='amd-stibp'/>
+ <feature policy='require' name='amd-ssbd'/>
+ <feature policy='require' name='rdctl-no'/>
+ <feature policy='require' name='ibrs-all'/>
+ <feature policy='require' name='skip-l1dfl-vmentry'/>
+ <feature policy='require' name='mds-no'/>
+ <feature policy='require' name='pschange-mc-no'/>
+ <feature policy='require' name='tsx-ctrl'/>
+ <feature policy='disable' name='hle'/>
+ <feature policy='disable' name='rtm'/>
+ <feature policy='disable' name='mpx'/>
+ </cpu>
When the virtual machine is live-migrated to target Host B(B has same
CPU with A), an error occurs during CPU compatibility checks. The log
reports the following error:
nova.exception.InvalidCPUInfo: Configured CPU model: Cascadelake-Server
is not compatible with host CPU. Please correct your config and try
again. Unacceptable CPU info: CPU doesn't have compatibility.
Debugging reveals that the issue is due to the missing xwaves feature:
- [root@controller-1 home]# virsh hypervisor-cpu-compare test.xml --error
- error: Failed to compare hypervisor CPU with test.xml
- error: the CPU is incompatible with host CPU: Host CPU does not provide required features: xsaves
+ [root@controller-1 home]# virsh hypervisor-cpu-compare test.xml --error
+ error: Failed to compare hypervisor CPU with test.xml
+ error: the CPU is incompatible with host CPU: Host CPU does not provide required features: xsaves
- Preliminary code analysis shows that when a virtual machine is created using the host-model method, the instance.vcpu_model.model property of the instance object is empty. This causes the code to use the physical CPU features of the host where the virtual machine resides (Host A) and compare them with the hypervisor of the target host (Host B) using the compare_hypervisor_cpu function, resulting in the error.
-
+ Preliminary code analysis shows that when a virtual machine is created
+ using the host-model method, the instance.vcpu_model.model property of
+ the instance object is empty. This causes the code to use the physical
+ CPU features of the host where the virtual machine resides (Host A) and
+ compare them with the hypervisor of the target host (Host B) using the
+ compare_hypervisor_cpu function, resulting in the error.
+
if not instance.vcpu_model or not instance.vcpu_model.model:
- source_cpu_info = src_compute_info['cpu_info']
- self._compare_cpu(None, source_cpu_info, instance)
+ source_cpu_info = src_compute_info['cpu_info']
+ self._compare_cpu(None, source_cpu_info, instance)
** Description changed:
Description:
In Openstack antelope, cpu_mode and cpu_models are not explicitly
declared in nova.conf. A virtual machine is created and runs on Host A.
- The CPU features of Host A include xwaves:
+ The CPU features of Host A include xsaves:
root@controller-2:~# lscpu | grep Flags
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb cat_l3 cdp_l3 invpcid_single intel_ppin ssbd mba ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid cqm mpx rdt_a avx512f avx512dq rdseed adx smap clflushopt clwb intel_pt avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local dtherm ida arat pln pts hwp hwp_act_window hwp_epp hwp_pkg_req pku ospke avx512_vnni md_clear flush_l1d arch_capabilities
However, the virtual machine’s CPU type is Cascadelake-Server, which
- does not include the CPU feature xwaves:
+ does not include the CPU feature xsaves:
root@controller-2:~# virsh dumpxml instance-00000515 | grep "cpu mode" -A40
<cpu mode='custom' match='exact' check='full'>
<model fallback='forbid'>Cascadelake-Server</model>
<vendor>Intel</vendor>
<topology sockets='8' dies='1' cores='1' threads='1'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='vmx'/>
<feature policy='require' name='pdcm'/>
<feature policy='require' name='hypervisor'/>
<feature policy='require' name='tsc_adjust'/>
<feature policy='require' name='umip'/>
<feature policy='require' name='pku'/>
<feature policy='require' name='md-clear'/>
<feature policy='require' name='stibp'/>
<feature policy='require' name='arch-capabilities'/>
<feature policy='require' name='xsaves'/>
<feature policy='require' name='ibpb'/>
<feature policy='require' name='ibrs'/>
<feature policy='require' name='amd-stibp'/>
<feature policy='require' name='amd-ssbd'/>
<feature policy='require' name='rdctl-no'/>
<feature policy='require' name='ibrs-all'/>
<feature policy='require' name='skip-l1dfl-vmentry'/>
<feature policy='require' name='mds-no'/>
<feature policy='require' name='pschange-mc-no'/>
<feature policy='require' name='tsx-ctrl'/>
<feature policy='disable' name='hle'/>
<feature policy='disable' name='rtm'/>
<feature policy='disable' name='mpx'/>
</cpu>
When the virtual machine is live-migrated to target Host B(B has same
CPU with A), an error occurs during CPU compatibility checks. The log
reports the following error:
nova.exception.InvalidCPUInfo: Configured CPU model: Cascadelake-Server
is not compatible with host CPU. Please correct your config and try
again. Unacceptable CPU info: CPU doesn't have compatibility.
Debugging reveals that the issue is due to the missing xwaves feature:
[root@controller-1 home]# virsh hypervisor-cpu-compare test.xml --error
error: Failed to compare hypervisor CPU with test.xml
error: the CPU is incompatible with host CPU: Host CPU does not provide required features: xsaves
Preliminary code analysis shows that when a virtual machine is created
using the host-model method, the instance.vcpu_model.model property of
the instance object is empty. This causes the code to use the physical
CPU features of the host where the virtual machine resides (Host A) and
compare them with the hypervisor of the target host (Host B) using the
compare_hypervisor_cpu function, resulting in the error.
if not instance.vcpu_model or not instance.vcpu_model.model:
source_cpu_info = src_compute_info['cpu_info']
self._compare_cpu(None, source_cpu_info, instance)
** Description changed:
Description:
In Openstack antelope, cpu_mode and cpu_models are not explicitly
declared in nova.conf. A virtual machine is created and runs on Host A.
The CPU features of Host A include xsaves:
root@controller-2:~# lscpu | grep Flags
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb cat_l3 cdp_l3 invpcid_single intel_ppin ssbd mba ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid cqm mpx rdt_a avx512f avx512dq rdseed adx smap clflushopt clwb intel_pt avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local dtherm ida arat pln pts hwp hwp_act_window hwp_epp hwp_pkg_req pku ospke avx512_vnni md_clear flush_l1d arch_capabilities
However, the virtual machine’s CPU type is Cascadelake-Server, which
does not include the CPU feature xsaves:
root@controller-2:~# virsh dumpxml instance-00000515 | grep "cpu mode" -A40
<cpu mode='custom' match='exact' check='full'>
<model fallback='forbid'>Cascadelake-Server</model>
<vendor>Intel</vendor>
<topology sockets='8' dies='1' cores='1' threads='1'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='vmx'/>
<feature policy='require' name='pdcm'/>
<feature policy='require' name='hypervisor'/>
<feature policy='require' name='tsc_adjust'/>
<feature policy='require' name='umip'/>
<feature policy='require' name='pku'/>
<feature policy='require' name='md-clear'/>
<feature policy='require' name='stibp'/>
<feature policy='require' name='arch-capabilities'/>
<feature policy='require' name='xsaves'/>
<feature policy='require' name='ibpb'/>
<feature policy='require' name='ibrs'/>
<feature policy='require' name='amd-stibp'/>
<feature policy='require' name='amd-ssbd'/>
<feature policy='require' name='rdctl-no'/>
<feature policy='require' name='ibrs-all'/>
<feature policy='require' name='skip-l1dfl-vmentry'/>
<feature policy='require' name='mds-no'/>
<feature policy='require' name='pschange-mc-no'/>
<feature policy='require' name='tsx-ctrl'/>
<feature policy='disable' name='hle'/>
<feature policy='disable' name='rtm'/>
<feature policy='disable' name='mpx'/>
</cpu>
When the virtual machine is live-migrated to target Host B(B has same
CPU with A), an error occurs during CPU compatibility checks. The log
reports the following error:
nova.exception.InvalidCPUInfo: Configured CPU model: Cascadelake-Server
is not compatible with host CPU. Please correct your config and try
again. Unacceptable CPU info: CPU doesn't have compatibility.
- Debugging reveals that the issue is due to the missing xwaves feature:
+ Debugging reveals that the issue is due to the missing xsaves feature:
[root@controller-1 home]# virsh hypervisor-cpu-compare test.xml --error
error: Failed to compare hypervisor CPU with test.xml
error: the CPU is incompatible with host CPU: Host CPU does not provide required features: xsaves
Preliminary code analysis shows that when a virtual machine is created
using the host-model method, the instance.vcpu_model.model property of
the instance object is empty. This causes the code to use the physical
CPU features of the host where the virtual machine resides (Host A) and
compare them with the hypervisor of the target host (Host B) using the
compare_hypervisor_cpu function, resulting in the error.
if not instance.vcpu_model or not instance.vcpu_model.model:
source_cpu_info = src_compute_info['cpu_info']
self._compare_cpu(None, source_cpu_info, instance)
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/2122022
Title:
live migrate failed
Status in OpenStack Compute (nova):
New
Bug description:
Description:
In Openstack antelope, cpu_mode and cpu_models are not explicitly
declared in nova.conf. A virtual machine is created and runs on Host
A. The CPU features of Host A include xsaves:
root@controller-2:~# lscpu | grep Flags
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb cat_l3 cdp_l3 invpcid_single intel_ppin ssbd mba ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid cqm mpx rdt_a avx512f avx512dq rdseed adx smap clflushopt clwb intel_pt avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local dtherm ida arat pln pts hwp hwp_act_window hwp_epp hwp_pkg_req pku ospke avx512_vnni md_clear flush_l1d arch_capabilities
However, the virtual machine’s CPU type is Cascadelake-Server, which
does not include the CPU feature xsaves:
root@controller-2:~# virsh dumpxml instance-00000515 | grep "cpu mode" -A40
<cpu mode='custom' match='exact' check='full'>
<model fallback='forbid'>Cascadelake-Server</model>
<vendor>Intel</vendor>
<topology sockets='8' dies='1' cores='1' threads='1'/>
<feature policy='require' name='ss'/>
<feature policy='require' name='vmx'/>
<feature policy='require' name='pdcm'/>
<feature policy='require' name='hypervisor'/>
<feature policy='require' name='tsc_adjust'/>
<feature policy='require' name='umip'/>
<feature policy='require' name='pku'/>
<feature policy='require' name='md-clear'/>
<feature policy='require' name='stibp'/>
<feature policy='require' name='arch-capabilities'/>
<feature policy='require' name='xsaves'/>
<feature policy='require' name='ibpb'/>
<feature policy='require' name='ibrs'/>
<feature policy='require' name='amd-stibp'/>
<feature policy='require' name='amd-ssbd'/>
<feature policy='require' name='rdctl-no'/>
<feature policy='require' name='ibrs-all'/>
<feature policy='require' name='skip-l1dfl-vmentry'/>
<feature policy='require' name='mds-no'/>
<feature policy='require' name='pschange-mc-no'/>
<feature policy='require' name='tsx-ctrl'/>
<feature policy='disable' name='hle'/>
<feature policy='disable' name='rtm'/>
<feature policy='disable' name='mpx'/>
</cpu>
When the virtual machine is live-migrated to target Host B(B has same
CPU with A), an error occurs during CPU compatibility checks. The log
reports the following error:
nova.exception.InvalidCPUInfo: Configured CPU model: Cascadelake-
Server is not compatible with host CPU. Please correct your config and
try again. Unacceptable CPU info: CPU doesn't have compatibility.
Debugging reveals that the issue is due to the missing xsaves feature:
[root@controller-1 home]# virsh hypervisor-cpu-compare test.xml --error
error: Failed to compare hypervisor CPU with test.xml
error: the CPU is incompatible with host CPU: Host CPU does not provide required features: xsaves
Preliminary code analysis shows that when a virtual machine is created
using the host-model method, the instance.vcpu_model.model property of
the instance object is empty. This causes the code to use the physical
CPU features of the host where the virtual machine resides (Host A)
and compare them with the hypervisor of the target host (Host B) using
the compare_hypervisor_cpu function, resulting in the error.
if not instance.vcpu_model or not instance.vcpu_model.model:
source_cpu_info = src_compute_info['cpu_info']
self._compare_cpu(None, source_cpu_info, instance)
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/2122022/+subscriptions