Uploaded image for project: 'Satellite'
  1. Satellite
  2. SAT-39890

Unable to provision virtual machines on RHEL 10 hosts using libvirt Compute Resource as it uses 'cirrus' video card

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: Critical Critical
    • None
    • 6.17.5
    • Provisioning
    • None
    • False
    • sat-rocket
    • None
    • None
    • None
    • None

      Description of problem:

      When trying to provision a virtual machine using libvirt Compute Resource on RHEL 10 you get error: "saving the server: Call to virDomainDefineXML failed: unsupported configuration: domain configuration does not support video model 'cirrus'"

      Is this issue a regression from an earlier version:

      Issue is that in RHEL 10 the "cirrus" video card is no longer compiled in qemu. It was depricated in RHEL 8 & 9.

       

      'Cirrus' video type has be changed to 'virtio' in /usr/share/gems/gems/fog-libvirt-0.13.2/lib/fog/libvirt/models/compute/server.rb.

       

      From:

                :video                  => {:type => "cirrus", :vram => 9216, :heads => 1},
      TO:
               :video                  => {:type => "virtio" :heads => 1},

       

      After making the change, the provisioning successfully completes. This has to be changed to 'virtio' permanently. 

       From the support case:

      Enviroment
      ----------
      mini1.home.lan - Satellite server
      mini2.home.lan - RHEL 10 KVM hypervisor

      Issue:
      ------
      When trying to provision a virtual machine using libvirt Compute Resource on RHEL 10 you get the following error (screen shot attached):

      Error saving the server: Call to virDomainDefineXML failed: unsupported configuration: domain configuration does not support video model 'cirrus'

      /var/log/foreman/production.log:
      2025-10-29T16:18:02 [W|app|53fdf1c2] Failed to create a compute mini2.home.lan (Libvirt) instance test2.home.lan: Error saving the server: Call to virDomainDefineXML failed: unsupported configuration: domain configuration does not support video model 'cirrus'

      Where the problem is:
      ---------------------
      Issue is that in RHEL 10 the "cirrus" video card is no longer compiled in qemu. It was depricated in RHEL 8 & 9. Also cirrus is considered harmful:
      https://www.kraxel.org/blog/2014/10/qemu-using-cirrus-considered-harmful/

      In RHEL 10 the following video cards are supported in qemu:

      1. virsh domcapabilities | grep -A8 video

      <video supported='yes'>
      <enum name='modelType'>
      <value>vga</value>
      <value>virtio</value>
      <value>none</value>
      <value>bochs</value>
      <value>ramfb</value>
      </enum>
      </video>

      The issue is in package rubygem-fog-libvirt and file:
      /usr/share/gems/gems/fog-libvirt-0.13.2/lib/fog/libvirt/models/compute/server.rb

      Can also see it upstream:
      https://github.com/fog/fog-libvirt/blob/v0.13.2/lib/fog/libvirt/models/compute/server.rb

      Possible Solution Solution:
      -------------------
      The easiest solution is to choose a video card all distros support which is "virtio" or "vga".

      In Openstack they moved to "virtio":
      https://opendev.org/openstack/nova/commit/cc59698d6903b0ed3778826d6704758294abbd69

      Long term Solution:
      -------------------
      Users should have the ability to choose a "supported" video card in the "Compute Profile" for hypervior. Support for cpu, memory, firmware, networking and storage is already there. Video card would another option.

      Describe the impact to you or the business
      Red Hat customers using RHEL 10 KVM hyperviors will not be able to provision systems.
      Users should have the ability to choose a "supported" video card in the "Compute Profile" for hypervior. Support for cpu, memory, firmware, networking and storage is already there. Video card would another option.

       

       

              Unassigned Unassigned
              rhn-support-sahsharm Sahil Sharma
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: