Bug 699478

Summary: unknown video model 'qxl'
Product: [Fedora] Fedora Reporter: Rob Riggs <rob+redhat>
Component: virt-managerAssignee: Cole Robinson <crobinso>
Status: CLOSED CURRENTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 14CC: arnold.x.wang, berrange, crobinso, hbrock, jforbes, virt-maint
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-01-17 22:48:01 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Rob Riggs 2011-04-25 19:12:03 UTC
Description of problem:
virt-manager allows the selection of qxl for the video adapter, but selecting it results in a backtrace and the error message "internal error unknown video model 'qxl'"

Version-Release number of selected component (if applicable):
virt-manager-0.8.7-2.fc14.noarch

How reproducible:
Always

Steps to Reproduce:
1. Take an existing Fedora 15 VM set up with vmvga and VNC
2. Change the video adapter to qxl
3. Click on the "Apply" button.
  
Actual results:
A backtrace and the error message noted above.


Expected results:
qxl should not be a displayed option if it is not supported.  Otherwise selecting qxl should result in qxl being successfully selected.

Additional info:

Traceback (most recent call last):
  File "/usr/share/virt-manager/virtManager/details.py", line 1975, in _change_config_helper
    self.vm.redefine_cached()
  File "/usr/share/virt-manager/virtManager/domain.py", line 262, in redefine_cached
    self._redefine_xml(xml)
  File "/usr/share/virt-manager/virtManager/libvirtobject.py", line 152, in _redefine_xml
    return self._redefine_helper(origxml, newxml)
  File "/usr/share/virt-manager/virtManager/libvirtobject.py", line 142, in _redefine_helper
    self._define(newxml)
  File "/usr/share/virt-manager/virtManager/domain.py", line 1000, in _define
    self.get_connection().define_domain(newxml)
  File "/usr/share/virt-manager/virtManager/connection.py", line 780, in define_domain
    return self.vmm.defineXML(xml)
  File "/usr/lib64/python2.7/site-packages/libvirt.py", line 1299, in defineXML
    if ret is None:raise libvirtError('virDomainDefineXML() failed', conn=self)
libvirtError: internal error unknown video model 'qxl'

Comment 1 Arnold Wang 2011-05-14 08:15:45 UTC
Same problem here. 
Host:
[root@arnoldw ~]# uname -a
Linux arnoldw.itlogon.com 2.6.35.13-91.fc14.x86_64 #1 SMP Tue May 3 13:23:06 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux
[root@arnoldw ~]# rpm -qa | grep qxl
xorg-x11-drv-qxl-0.0.20.f14b-7.fc14.x86_64
[root@arnoldw ~]# rpm -q virt-manager
virt-manager-0.8.7-2.fc14.noarch
Guest:
[root@arnoldw qemu]#more Windows7.xml 
<domain type='kvm'>
  <name>Windows7</name>
  <uuid>c58e6964-2e47-8ee3-6d04-61cad2a3c01a</uuid>
  <memory>1572864</memory>
  <currentMemory>1572864</currentMemory>
  <vcpu>2</vcpu>
  <os>
    <type arch='i686' machine='pc-0.13'>hvm</type>
    <boot dev='hd'/>
  </os>
  <features>
    <acpi/>
    <apic/>
    <pae/>
  </features>
  <cpu match='exact'>
    <model>Nehalem</model>
    <vendor>Intel</vendor>
    <feature policy='require' name='tm2'/>
    <feature policy='require' name='est'/>
    <feature policy='require' name='monitor'/>
    <feature policy='require' name='ss'/>
    <feature policy='require' name='vme'/>
    <feature policy='require' name='rdtscp'/>
    <feature policy='require' name='ht'/>
    <feature policy='require' name='ds'/>
    <feature policy='require' name='pbe'/>
    <feature policy='require' name='tm'/>
    <feature policy='require' name='vmx'/>
    <feature policy='require' name='ds_cpl'/>
    <feature policy='require' name='xtpr'/>
    <feature policy='require' name='acpi'/>
  </cpu>
  <clock offset='localtime'/>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <devices>
    <emulator>/usr/bin/qemu-kvm</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw'/>
      <source file='/var/lib/libvirt/images/Windows7.img'/>
      <target dev='hda' bus='ide'/>
      <address type='drive' controller='0' bus='0' unit='0'/>
    </disk>
    <disk type='block' device='cdrom'>
      <driver name='qemu' type='raw'/>
      <source dev='/dev/sr0'/>
      <target dev='hdc' bus='ide'/>
      <readonly/>
      <address type='drive' controller='0' bus='1' unit='0'/>
    </disk>
    <controller type='ide' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/
>
    </controller>
    <interface type='network'>
      <mac address='52:54:00:01:f4:a3'/>
      <source network='default'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/
>
    </interface>
    <serial type='pty'>
      <target port='0'/>
    </serial>
    <console type='pty'>
      <target type='serial' port='0'/>
    </console>
    <input type='tablet' bus='usb'/>
    <input type='mouse' bus='ps2'/>
    <graphics type='vnc' port='-1' autoport='yes'/>
    <sound model='ac97'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/
>
    </sound>
    <video>
      <model type='vga' vram='9216' heads='1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/
>
    </video>
    <hostdev mode='subsystem' type='usb' managed='yes'>
      <source>
        <vendor id='0x05ac'/>
        <product id='0x129e'/>
      </source>
    </hostdev>
    <memballoon model='virtio'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/
>
    </memballoon>
  </devices>
</domain>
Problem:
From Virt-Manager, when I tried to change Video from "VGA" to "qxl", I received the following error:
Traceback (most recent call last):
  File "/usr/share/virt-manager/virtManager/details.py", line 1975, in _change_config_helper
    self.vm.redefine_cached()
  File "/usr/share/virt-manager/virtManager/domain.py", line 262, in redefine_cached
    self._redefine_xml(xml)
  File "/usr/share/virt-manager/virtManager/libvirtobject.py", line 152, in _redefine_xml
    return self._redefine_helper(origxml, newxml)
  File "/usr/share/virt-manager/virtManager/libvirtobject.py", line 142, in _redefine_helper
    self._define(newxml)
  File "/usr/share/virt-manager/virtManager/domain.py", line 1000, in _define
    self.get_connection().define_domain(newxml)
  File "/usr/share/virt-manager/virtManager/connection.py", line 780, in define_domain
    return self.vmm.defineXML(xml)
  File "/usr/lib64/python2.7/site-packages/libvirt.py", line 1299, in defineXML
    if ret is None:raise libvirtError('virDomainDefineXML() failed', conn=self)
libvirtError: internal error unknown video model 'qxl'

Comment 2 Cole Robinson 2011-07-11 16:24:24 UTC
The version of qemu in f14 doesn't support QXL. We should probably hide the option in virt-manager UI in that case

Comment 3 Cole Robinson 2012-01-17 22:48:01 UTC
Fedora 14 is end of life now, so closing this bug.