Bug 795113

Summary: VDSM: failed to start VM due to libvirtError: video type cirrus is only valid as primary video card
Product: [Retired] oVirt Reporter: Avi Tal <atal>
Component: ovirt-engine-coreAssignee: Eli Mesika <emesika>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: unspecifiedCC: abaron, acathrow, bazulay, dfediuck, iheim, oramraz, srevivo, ykaul
Target Milestone: ---Keywords: Reopened
Target Release: 3.1   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-08-09 08:00:33 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Attachments:
Description Flags
vdsm log none

Description Avi Tal 2012-02-19 13:12:41 UTC
Created attachment 564183 [details]
vdsm log

Description of problem:
Fedora 16
vdsm-4.9.3.3-0.fc16.x86_64
qemu-kvm-0.15.1-4.fc16.x86_64 

Thread-2888::ERROR::2012-02-19
   12:49:48,329::vm::552::vm.Vm::(_startUnderlyingVm)
   vmId=`82f1c0e2-13e0-4122-9198-582db60bb0a3`::The vm start process failed
   Traceback (most recent call last):
     File "/usr/share/vdsm/vm.py", line 518, in _startUnderlyingVm
       self._run()
     File "/usr/share/vdsm/libvirtvm.py", line 1169, in _run
       self._connection.createXML(domxml, flags),
     File "/usr/share/vdsm/libvirtconnection.py", line 79, in wrapper
       ret = f(*args, **kwargs)
     File "/usr/lib64/python2.7/site-packages/libvirt.py", line 2100, in
   createXML
       if ret is None:raise libvirtError('virDomainCreateXML() failed',
   conn=self)
   libvirtError: unsupported configuration: video type cirrus is only valid
   as primary video card
   Thread-2888::DEBUG::2012-02-19
   12:49:48,331::vm::882::vm.Vm::(setDownStatus)
   vmId=`82f1c0e2-13e0-4122-9198-582db60bb0a3`::Changed state to Down:
   unsupported configuration: video type cirrus is only valid as primary
   video card

 <disk device="cdrom" type="file">
                           <source file=""/>
                           <target bus="ide" dev="hdc"/>
                   </disk>
                   <video>
                           <model heads="1" type="cirrus" vram="65536"/>
                   </video>
                   <video>
                           <model heads="1" type="cirrus" vram="65536"/>
                   </video>
           </devices>
           <os>
                   <type arch="x86_64" machine="pc-0.14">hvm</type>
                   <boot dev="hd"/>
                   <smbios mode="sysinfo"/>
           </os>
           <sysinfo type="smbios">
                   <system>
                           <entry name="manufacturer">Red Hat</entry>
                           <entry name="product">RHEV Hypervisor</entry>
                           <entry name="version">16-1</entry>
                           <entry
   name="serial">4C4C4544-0042-3510-8032-B8C04F35354A_00:26:6C:FD:90:20</entry>
                           <entry
   name="uuid">82f1c0e2-13e0-4122-9198-582db60bb0a3</entry>
                   </system>
           </sysinfo>
           <clock adjustment="0" offset="variable">
                   <timer name="rtc" tickpolicy="catchup"/>
           </clock>
           <features>
                   <acpi/>
           </features>
           <cpu match="exact">
                   <model>Nehalem</model>
                   <topology cores="2" sockets="2" threads="1"/>
           </cpu>
   </domain>

Comment 1 Avi Tal 2012-02-19 13:16:04 UTC
I must note that this test runs on fake hosts

Comment 2 Dan Kenigsberg 2012-02-19 13:30:08 UTC
Engine asks Vdsm to start a Vm with Vnc and two monitors (unsupported).

Thread-2438::DEBUG::2012-02-19 12:40:34,323::clientIF::81::vds::(wrapper) return create with {'status': {'message': 'Done', 'code': 0}, 'vmList': {'status': 'WaitForLaunch', 'bridge': 'ovirtmgmt', 'acpiEnable': 'true', 'emulatedMachine': 'pc-0.14', 'tabletEnable': 'true', 'pid': '0', 'drives': [{'index': '0', 'domainID': '4ea850c6-deff-4568-b713-cdd7a535ee64', 'format': 'cow', 'boot': 'false', 'volumeID': '7059b679-4dda-428a-a647-b386a0f4dda6', 'imageID': 'c66cc3d5-abb8-443f-8886-87f563194695', 'poolID': 'dab24d0e-435e-4920-b321-8e97e871ed5b', 'propagateErrors': 'off', 'if': 'virtio'}], 'transparentHugePages': 'true', 'keyboardLayout': 'en-us', 'displayPort': '-1', 'displaySecurePort': '-1', 'timeOffset': '0', 'cpuType': 'Nehalem', 'smp': '4', 'nicModel': 'pv', 'soundDevice': 'ich6', 'macAddr': '00:1a:4a:16:95:90', 'kvmEnable': 'true', 'vmId': '82f1c0e2-13e0-4122-9198-582db60bb0a3', 'boot': 'c', 'custom': {}, 'vmType': 'kvm', 'memSize': 2048, 'displayIp': '0', 'clientIp': '', 'smpCoresPerSocket': '2', 'vmName': 'restvm1', 'display': 'vnc', 'spiceMonitors': '2', 'nice': '0'}}

Comment 3 Avi Tal 2012-02-19 14:35:33 UTC
Reopen the Bug on engine:
Updating Display settings VNC with multiple monitors shouldn't be allowed at the engine layer.

REST API Scenario:
1. create VM with display VNC
2. update display with two monitors: PUT http://.../vmid: ... <display><monitors>2</monitors></display>


Engine should return Error on unsupported operation.

Comment 4 Doron Fediuck 2012-02-20 17:31:06 UTC
It may be related to the new stable device addresses feature.

Dan, any similar scenarii we should validate and block?

Comment 5 Eli Mesika 2012-03-18 10:55:04 UTC
Not related to SDA , fix will be in canDoAction for add/update VM

Comment 6 Eli Mesika 2012-03-18 14:22:59 UTC
http://gerrit.ovirt.org/#change,2898

Comment 7 Itamar Heim 2012-08-09 08:00:33 UTC
closing ON_QA bugs as oVirt 3.1 was released:
http://www.ovirt.org/get-ovirt/