Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 1691814 - Live migration of High performance VM fails on Haswell-noTSX
Summary: Live migration of High performance VM fails on Haswell-noTSX
Keywords:
Status: CLOSED INSUFFICIENT_DATA
Alias: None
Product: ovirt-engine
Classification: oVirt
Component: BLL.Virt
Version: 4.3.2.1
Hardware: Unspecified
OS: Unspecified
unspecified
medium vote
Target Milestone: ---
: ---
Assignee: Michal Skrivanek
QA Contact: meital avital
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-03-22 14:56 UTC by Roman Hodain
Modified: 2019-04-10 10:04 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-04-10 10:04:34 UTC
oVirt Team: Virt
rhodain: planning_ack?
rhodain: devel_ack?
rhodain: testing_ack?


Attachments (Terms of Use)

Description Roman Hodain 2019-03-22 14:56:00 UTC
Description of problem:
When migration High-performance VM I get the following ERROR:
    
    Could not fetch data needed for VM migrate operation

2019-03-22 14:43:35,554Z INFO  [org.ovirt.engine.core.bll.scheduling.policyunits.CpuLevelFilterPolicyUnit] (default task-4) [35f10e6c-6e63-47b1-b43f-10b690970966] Host rhodain-upgrade-h02.sbr-virt.gsslab.brq.redhat.com provides flags de, fxsr, lm, sse4_1, sse4_2, avx2, sse, arat, mca, msr, mce, vme, model_IvyBridge, mtrr, model_SandyBridge, pae, popcnt, f16c, constant_tsc, tpr_shadow, model_Nehalem, lahf_lm, model_Westmere, rdtscp, clflush, vmx, fsgsbase, pat, apic, xsave, ept, eagerfpu, pni, smep, xsaveopt, rep_good, xtopology, model_Haswell-noTSX, erms, syscall, pse, flexpriority, tsc, pse36, nx, ssse3, nopl, aes, pge, hypervisor, mmx, pclmulqdq, bmi2, bmi1, sep, cx8, avx, vpid, movbe, vnmi, rdrand, invpcid, fpu, model_Conroe, abm, x2apic, cx16, tsc_deadline_timer, model_Penryn, pcid, sse2, fma, cmov
2019-03-22 14:43:35,554Z INFO  [org.ovirt.engine.core.bll.scheduling.policyunits.CpuLevelFilterPolicyUnit] (default task-4) [35f10e6c-6e63-47b1-b43f-10b690970966] Host rhodain-upgrade-h02.sbr-virt.gsslab.brq.redhat.com can't host the VM, flags are missing: Haswell-noTSX
2019-03-22 14:43:35,555Z INFO  [org.ovirt.engine.core.bll.scheduling.SchedulingManager] (default task-4) [35f10e6c-6e63-47b1-b43f-10b690970966] Candidate host 'rhodain-upgrade-h02.sbr-virt.gsslab.brq.redhat.com' ('b83fdc02-cf15-4a70-8fc0-7a1e594bc61d') was filtered out by 'VAR__FILTERTYPE__INTERNAL' filter 'CPU-Level' (correlation id: null)

Version-Release number of selected component (if applicable):
rhvm-4.3.2.1-0.1.el7.noarch

How reproducible:
100%

Steps to Reproduce:
1. use hypervisor with Haswell-noTSX
2. Create high-performance VM
3. Live migrate the VM

Actual results:
Migration failed

Expected results:
Migration OK

Additional info:
When the Filtering is triggered. We get the reuired flags from the VM 

CpuLevelFilterPolicyUnit.java:65 Set<String> requiredFlags = Arrays.stream(vm.getCpuName().split(","))

It returns "Haswell-noTSX"

But the host returns "model_Haswell-noTSX"

So it does not match. 


host flags:
fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx rdtscp lm constant_tsc rep_good nopl xtopology eagerfpu pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm fsgsbase bmi1 avx2 smep bmi2 erms invpcid xsaveopt arat

VDSM report:
vdsm-client Host getCapabilities| grep cpuFlags
    "cpuFlags": "fpu,vme,de,pse,tsc,msr,pae,mce,cx8,apic,sep,mtrr,pge,mca,cmov,pat,pse36,clflush,mmx,fxsr,sse,sse2,syscall,nx,rdtscp,lm,constant_tsc,rep_good,nopl,xtopology,eagerfpu,pni,pclmulqdq,vmx,ssse3,fma,cx16,pcid,sse4_1,sse4_2,x2apic,movbe,popcnt,tsc_deadline_timer,aes,xsave,avx,f16c,rdrand,hypervisor,lahf_lm,abm,tpr_shadow,vnmi,flexpriority,ept,vpid,fsgsbase,bmi1,avx2,smep,bmi2,erms,invpcid,xsaveopt,arat,model_Nehalem,model_Haswell-noTSX,model_SandyBridge,model_IvyBridge,model_Penryn,model_Westmere,model_Conroe",

VM config:
select vm_name,cpu_name,host_cpu_flags from vms where vm_name='tst01';
 vm_name |   cpu_name    | host_cpu_flags 
---------+---------------+----------------
 tst01   | Haswell-noTSX | t
(1 row)

Comment 1 Roman Hodain 2019-03-22 14:59:13 UTC
Also, the error message should be better as it really does not say what is happening.

"Could not fetch data needed for VM migrate operation"

Comment 2 Ryan Barry 2019-03-23 00:14:55 UTC
Logs?

Comment 3 Michal Skrivanek 2019-03-23 05:12:43 UTC
The cpu_name in db is wrong. How exactly did you configure the VM, and how exactly did you run it?

Comment 4 Roman Hodain 2019-04-10 08:23:03 UTC
(In reply to Michal Skrivanek from comment #3)
> The cpu_name in db is wrong. How exactly did you configure the VM, and how
> exactly did you run it?

Hi,

I simply created the VM. Just set the name, disk and the High-performance profile. The started and try to migrate. I tried in two different environments, but I cannot reproduce it any more :/
I am not sure what was different. 

So I guess you can close it, If I figure out what happened I will reopen.

Roman


Note You need to log in before you can comment on or make changes to this bug.