yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #95318
[Bug 2097529] [NEW] virtio should be the default hw_video_model even for spice
Public bug reported:
4 years ago we changed the default video model in the libvirt driver to virto for all backends that
support it.
https://blueprints.launchpad.net/nova/+spec/virtio-as-default-display-
device
when that change was made
https://github.com/openstack/nova/commit/cc59698d6903b0ed3778826d6704758294abbd69
we did not update the default when using spice
https://github.com/openstack/nova/blob/e27bbe72e0d293e55c30d4f90ca0afcf47427419/nova/virt/libvirt/driver.py#L6771-L6772
In centos/rhel 9 cirros was deprecated for removal i a possible future
release and QXL was removed entirely as all spice support was compiled
out of qemu.
it appears that ubuntu have now also taken the same approach and removed qxl support form 24.04
leading to the following error
libvirt.libvirtError: unsupported configuration: domain configuration does not support video model 'qxl'
qemu and libvirt on ubuntu 24.04 do correctly report that qxl is not supported via the domacaps API by omitting it form the last of available models
Feb 05 20:51:52.308686 np0039776312 nova-compute[65944]: <video
supported='yes'>
Feb 05 20:51:52.308686 np0039776312 nova-compute[65944]: <enum
name='modelType'>
Feb 05 20:51:52.308686 np0039776312 nova-compute[65944]:
<value>vga</value>
Feb 05 20:51:52.308686 np0039776312 nova-compute[65944]:
<value>cirrus</value>
Feb 05 20:51:52.308686 np0039776312 nova-compute[65944]:
<value>virtio</value>
Feb 05 20:51:52.308686 np0039776312 nova-compute[65944]:
<value>none</value>
Feb 05 20:51:52.308686 np0039776312 nova-compute[65944]:
<value>bochs</value>
Feb 05 20:51:52.308686 np0039776312 nova-compute[65944]: </enum>
Feb 05 20:51:52.308686 np0039776312 nova-compute[65944]: </video>
that means that nova will not report the qxl video model trait and as a result if the
image_metadata_prefilter is enabled it will correctly prevent vms that request qxl form being scheduled to host that do not support it.
this however does not protect form the config driven behavior that sets
the default to qxl if speice is enabled.
historically this was done because qxl was a spice optimised video model
offering richer graphics vs cirros or VGA.
today virtio is our general default and it provides a richer feature set
then qxl so we should just remove the special casing for spice and
default it to virtio as well.
** Affects: nova
Importance: High
Assignee: sean mooney (sean-k-mooney)
Status: Triaged
** Tags: console libvirt upgrade
--
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/2097529
Title:
virtio should be the default hw_video_model even for spice
Status in OpenStack Compute (nova):
Triaged
Bug description:
4 years ago we changed the default video model in the libvirt driver to virto for all backends that
support it.
https://blueprints.launchpad.net/nova/+spec/virtio-as-default-display-
device
when that change was made
https://github.com/openstack/nova/commit/cc59698d6903b0ed3778826d6704758294abbd69
we did not update the default when using spice
https://github.com/openstack/nova/blob/e27bbe72e0d293e55c30d4f90ca0afcf47427419/nova/virt/libvirt/driver.py#L6771-L6772
In centos/rhel 9 cirros was deprecated for removal i a possible future
release and QXL was removed entirely as all spice support was compiled
out of qemu.
it appears that ubuntu have now also taken the same approach and removed qxl support form 24.04
leading to the following error
libvirt.libvirtError: unsupported configuration: domain configuration does not support video model 'qxl'
qemu and libvirt on ubuntu 24.04 do correctly report that qxl is not supported via the domacaps API by omitting it form the last of available models
Feb 05 20:51:52.308686 np0039776312 nova-compute[65944]: <video
supported='yes'>
Feb 05 20:51:52.308686 np0039776312 nova-compute[65944]: <enum
name='modelType'>
Feb 05 20:51:52.308686 np0039776312 nova-compute[65944]:
<value>vga</value>
Feb 05 20:51:52.308686 np0039776312 nova-compute[65944]:
<value>cirrus</value>
Feb 05 20:51:52.308686 np0039776312 nova-compute[65944]:
<value>virtio</value>
Feb 05 20:51:52.308686 np0039776312 nova-compute[65944]:
<value>none</value>
Feb 05 20:51:52.308686 np0039776312 nova-compute[65944]:
<value>bochs</value>
Feb 05 20:51:52.308686 np0039776312 nova-compute[65944]: </enum>
Feb 05 20:51:52.308686 np0039776312 nova-compute[65944]: </video>
that means that nova will not report the qxl video model trait and as a result if the
image_metadata_prefilter is enabled it will correctly prevent vms that request qxl form being scheduled to host that do not support it.
this however does not protect form the config driven behavior that
sets the default to qxl if speice is enabled.
historically this was done because qxl was a spice optimised video
model offering richer graphics vs cirros or VGA.
today virtio is our general default and it provides a richer feature
set then qxl so we should just remove the special casing for spice and
default it to virtio as well.
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/2097529/+subscriptions
Follow ups