Bug 1256021

Summary: [PPC64LE] Failed to add ppc host to engine
Product: Red Hat Enterprise Virtualization Manager Reporter: Artyom <alukiano>
Component: ovirt-engineAssignee: Michal Skrivanek <michal.skrivanek>
Status: CLOSED CURRENTRELEASE QA Contact: Artyom <alukiano>
Severity: urgent Docs Contact:
Priority: urgent    
Version: 3.6.0CC: abologna, alukiano, gklein, hannsj_uhl, istein, lpeer, lsurette, mgoldboi, michal.skrivanek, mpoledni, rbalakri, Rhev-m-bugs, srevivo, ykaul
Target Milestone: ovirt-3.6.0-rcKeywords: AutomationBlocker, Regression, Triaged
Target Release: 3.6.0   
Hardware: ppc64le   
OS: Linux   
Whiteboard:
Fixed In Version: 3.6.0-12 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-04-20 01:34:47 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Virt RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1201513, 1277183, 1277184    
Attachments:
Description Flags
engine log none

Description Artyom 2015-08-23 11:48:01 UTC
Description of problem:
Failed to add ppc host to engine with error:
Host ***** moved to Non-Operational state as host CPU type is not supported in this cluster compatibility version or is not supported at all

Version-Release number of selected component (if applicable):
RHEVM: rhevm-3.6.0-0.12.master.el6.noarch
HOST: vdsm-4.17.3-1.el7ev.noarch

How reproducible:
Always

Steps to Reproduce:
1. Try to add host to engine
2.
3.

Actual results:
Failed with error above

Expected results:
Action success and host have state up

Additional info:
vdsClient -s 0 getVdsCaps
clusterLevels = ['3.6']
        cpuCores = '20'
        cpuFlags = 'powernv,model_POWER8'
        cpuModel = 'POWER8E (raw), altivec supported'
        cpuSockets = '4'
        cpuSpeed = '3690.000000'
        cpuThreads = '20'
        emulatedMachines = ['pseries', 'pseries-rhel7.2.0']

not sure about component problem or under backend or under vdsm

Comment 1 Omer Frenkel 2015-08-23 12:19:30 UTC
please attach engine.log...

Comment 2 Artyom 2015-08-23 12:43:51 UTC
Created attachment 1066025 [details]
engine log

Comment 3 Omer Frenkel 2015-08-23 13:51:11 UTC
the problem is that the cpu model is reported as 'model_POWER8' and engine expects 'model_power8'
to workaround this you can change the engine configuration to support this model (in the db)
i verified with Artyom this works and we could run a vm.

afaik, this was recently changed in libvirt, Michal, this a bug in libvirt or this is the correct name and we need to change the engine accordingly?

Comment 4 Martin Polednik 2015-08-24 09:00:57 UTC
This is intended change - libvirt reports what can be sent back to qemu's cpu element. 'power8' is not really a CPU model in qemu, on the other hand 'POWER8' is a magic constant that is used to select the best CPU choice for current version.

We should treat POWER8 as the correct model for POWER8 and POWER8e (and possibly any other POWER machine at this point).

Comment 8 Artyom 2015-09-02 07:18:00 UTC
Additional issue that I encounter with lower-uppercase, when we create vm we send cpu model with lowercase letters and libvirt just ignore cpu model because he not have such model.
Thread-38635::DEBUG::2015-09-02 03:15:50,888::__init__::534::jsonrpc.JsonRpcServer::(_serveRequest) Return 'VM.create' in bridge with {u'acpiEnable': u'true', u'emulatedMachine': u'pseries-rhel7.2.0', u'tabletEnable': u'true', 'pid': '0', u'memGuaranteedSize': 1024, u'transparentHugePages': u'true', 'displaySecurePort': '-1', u'spiceSslCipherSuite': u'DEFAULT', u'cpuType': u'power8',

Comment 9 Martin Polednik 2015-09-02 10:45:58 UTC
VDSM currently doesn't create POWER8 cpu element at all so it isn't issue of upper/lower case. There is upstream patch posted to add this functionality and that one will expect 'POWER8' cpuType.

Comment 11 Artyom 2015-09-17 09:55:41 UTC
Verified on rhevm-3.6.0-0.15.master.el6.noarch
Success to add host to cluster with IBM POWER 8 cpu type