Description of problem: A follow up of https://bugzilla.redhat.com/show_bug.cgi?id=1911662#c4: Due to https://bugzilla.redhat.com/show_bug.cgi?id=1911786 we have to stick in CNV 2.6 with `virtio` bus specification on the VM. This defaults to `virtio-non-transitional`. As a consequence EL6 guests can't reports memory stats through the ballooning device since they would only understand `virtio-transitional` ballooning devices. Version-Release number of selected component (if applicable): How reproducible: Create an EL6 guest on CNV 2.6 and use the `useVirtioTransitional` flag. All devices except for the ballooning device can then use the `virtio-non-transitional` flag. When then entering the virt-launcher pod, one will see static memory values reported since the ballooning device is not recognized. Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info: In case we want to fix this in 2.6: Once CNV 2.6 is rebased on RHEL AV 8.3.1 we can backport https://github.com/kubevirt/kubevirt/pull/4850. Since this is merged on master and CNV 2.7 should be based on at least AV 8.3.1 it should be automatically available and fixed in CNV 2.7. Collapse All Comments Expand All Comments
Description of problem: A follow up of https://bugzilla.redhat.com/show_bug.cgi?id=1911662#c4: Due to https://bugzilla.redhat.com/show_bug.cgi?id=1911786 we have to stick in CNV 2.6 with `virtio` bus specification on the VM. This defaults to `virtio-non-transitional`. As a consequence EL6 guests can't reports memory stats through the ballooning device since they would only understand `virtio-transitional` ballooning devices. Version-Release number of selected component (if applicable): How reproducible: Create an EL6 guest on CNV 2.6 and use the `useVirtioTransitional` flag. All devices except for the ballooning device can then use the `virtio-non-transitional` flag. When then entering the virt-launcher pod, one will see static memory values reported since the ballooning device is not recognized. Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info: In case we want to fix this in 2.6: Once CNV 2.6 is rebased on RHEL AV 8.3.1 we can backport https://github.com/kubevirt/kubevirt/pull/4850. Since this is merged on master and CNV 2.7 should be based on at least AV 8.3.1 it should be automatically available and fixed in CNV 2.7.
This can probably wait until it is automatically fixed in CNV 4.8. If for some reason this is urgently needed at some point in 2.6.1, backporting should be pretty simple to fix.
Targetting this to 4.8.0 based on priority and previous comments.
Verify with: CNV 4.8 virt-operator-container-v4.8.0-24 Steps: Create RHEL 6 vm from common templates, verify with VM dumpxml memballoon set with: model='virtio-transitional' See dumpxml: $ oc exec virt-launcher-rhel6-empty-wren-zwff4 -n default -it bash -c compute kubectl exec [POD] [COMMAND] is DEPRECATED and will be removed in a future version. Use kubectl exec [POD] -- [COMMAND] instead. [root@rhel6-empty-wren /]# [root@rhel6-empty-wren /]# [root@rhel6-empty-wren /]# [root@rhel6-empty-wren /]# virsh dumpxml error: command 'dumpxml' requires <domain> option [root@rhel6-empty-wren /]# virsh dumpxml 1 <domain type='kvm' id='1'> <name>default_rhel6-empty-wren</name> <uuid>2346b379-f2f9-594e-aa55-2554b23b14e3</uuid> <metadata> <kubevirt xmlns="http://kubevirt.io"> <uid>35b8d02a-871e-4a09-8876-6fb360c4ed12</uid> <graceperiod> <deletionGracePeriodSeconds>180</deletionGracePeriodSeconds> </graceperiod> </kubevirt> </metadata> <memory unit='KiB'>2097152</memory> <currentMemory unit='KiB'>2097152</currentMemory> <vcpu placement='static'>1</vcpu> <iothreads>1</iothreads> <resource> <partition>/machine</partition> </resource> <sysinfo type='smbios'> <system> <entry name='manufacturer'>Red Hat</entry> <entry name='product'>Container-native virtualization</entry> <entry name='version'>4.8.0</entry> <entry name='uuid'>2346b379-f2f9-594e-aa55-2554b23b14e3</entry> <entry name='sku'>4.8.0</entry> <entry name='family'>Red Hat</entry> </system> </sysinfo> <os> <type arch='x86_64' machine='pc-q35-rhel8.3.0'>hvm</type> <smbios mode='sysinfo'/> </os> <features> <acpi/> </features> <cpu mode='custom' match='exact' check='full'> <model fallback='forbid'>Broadwell-IBRS</model> <vendor>Intel</vendor> <topology sockets='1' dies='1' cores='1' threads='1'/> <feature policy='require' name='vme'/> <feature policy='require' name='ss'/> <feature policy='require' name='vmx'/> <feature policy='require' name='f16c'/> <feature policy='require' name='rdrand'/> <feature policy='require' name='hypervisor'/> <feature policy='require' name='arat'/> <feature policy='require' name='tsc_adjust'/> <feature policy='require' name='umip'/> <feature policy='require' name='md-clear'/> <feature policy='require' name='stibp'/> <feature policy='require' name='arch-capabilities'/> <feature policy='require' name='ssbd'/> <feature policy='require' name='xsaveopt'/> <feature policy='require' name='pdpe1gb'/> <feature policy='require' name='abm'/> <feature policy='require' name='ibpb'/> <feature policy='require' name='amd-stibp'/> <feature policy='require' name='amd-ssbd'/> <feature policy='require' name='skip-l1dfl-vmentry'/> <feature policy='require' name='pschange-mc-no'/> </cpu> <clock offset='utc'/> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>destroy</on_crash> <devices> <emulator>/usr/libexec/qemu-kvm</emulator> <disk type='block' device='disk' model='virtio-transitional'> <driver name='qemu' type='raw' cache='none' error_policy='stop' io='native'/> <source dev='/dev/rhel6-empty-wren' index='2'/> <backingStore/> <target dev='vda' bus='virtio'/> <boot order='1'/> <alias name='ua-rhel6-empty-wren'/> <address type='pci' domain='0x0000' bus='0x02' slot='0x04' function='0x0'/> </disk> <disk type='file' device='disk' model='virtio-transitional'> <driver name='qemu' type='raw' cache='none' error_policy='stop'/> <source file='/var/run/kubevirt-ephemeral-disks/cloud-init-data/default/rhel6-empty-wren/noCloud.iso' index='1'/> <backingStore/> <target dev='vdb' bus='virtio'/> <alias name='ua-cloudinitdisk'/> <address type='pci' domain='0x0000' bus='0x02' slot='0x05' function='0x0'/> </disk> <controller type='usb' index='0' model='none'> <alias name='usb'/> </controller> <controller type='scsi' index='0' model='virtio-transitional'> <alias name='scsi0'/> <address type='pci' domain='0x0000' bus='0x02' slot='0x02' function='0x0'/> </controller> <controller type='virtio-serial' index='0' model='virtio-transitional'> <alias name='virtio-serial0'/> <address type='pci' domain='0x0000' bus='0x02' slot='0x03' function='0x0'/> </controller> <controller type='sata' index='0'> <alias name='ide'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/> </controller> <controller type='pci' index='0' model='pcie-root'> <alias name='pcie.0'/> </controller> <controller type='pci' index='1' model='pcie-root-port'> <model name='pcie-root-port'/> <target chassis='1' port='0x10'/> <alias name='pci.1'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0' multifunction='on'/> </controller> <controller type='pci' index='2' model='pcie-to-pci-bridge'> <model name='pcie-pci-bridge'/> <alias name='pci.2'/> <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/> </controller> <controller type='pci' index='3' model='pcie-root-port'> <model name='pcie-root-port'/> <target chassis='3' port='0x11'/> <alias name='pci.3'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x1'/> </controller> <interface type='ethernet'> <mac address='52:54:00:90:cc:2c'/> <target dev='tap0' managed='no'/> <model type='virtio-transitional'/> <driver name='vhost'/> <mtu size='1400'/> <alias name='ua-default'/> <rom enabled='no'/> <address type='pci' domain='0x0000' bus='0x02' slot='0x01' function='0x0'/> </interface> <serial type='unix'> <source mode='bind' path='/var/run/kubevirt-private/35b8d02a-871e-4a09-8876-6fb360c4ed12/virt-serial0'/> <target type='isa-serial' port='0'> <model name='isa-serial'/> </target> <alias name='serial0'/> </serial> <console type='unix'> <source mode='bind' path='/var/run/kubevirt-private/35b8d02a-871e-4a09-8876-6fb360c4ed12/virt-serial0'/> <target type='serial' port='0'/> <alias name='serial0'/> </console> <channel type='unix'> <source mode='bind' path='/var/lib/libvirt/qemu/channel/target/domain-1-default_rhel6-empty-/org.qemu.guest_agent.0'/> <target type='virtio' name='org.qemu.guest_agent.0' state='connected'/> <alias name='channel0'/> <address type='virtio-serial' controller='0' bus='0' port='1'/> </channel> <input type='mouse' bus='ps2'> <alias name='input0'/> </input> <input type='keyboard' bus='ps2'> <alias name='input1'/> </input> <graphics type='vnc' socket='/var/run/kubevirt-private/35b8d02a-871e-4a09-8876-6fb360c4ed12/virt-vnc'> <listen type='socket' socket='/var/run/kubevirt-private/35b8d02a-871e-4a09-8876-6fb360c4ed12/virt-vnc'/> </graphics> <video> <model type='vga' vram='16384' heads='1' primary='yes'/> <alias name='video0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/> </video> <memballoon model='virtio-transitional'> <stats period='10'/> <alias name='balloon0'/> <address type='pci' domain='0x0000' bus='0x02' slot='0x06' function='0x0'/> </memballoon> <rng model='virtio-transitional'> <backend model='random'>/dev/urandom</backend> <alias name='rng0'/> <address type='pci' domain='0x0000' bus='0x02' slot='0x07' function='0x0'/> </rng> </devices> <seclabel type='dynamic' model='dac' relabel='yes'> <label>+107:+107</label> <imagelabel>+107:+107</imagelabel> </seclabel> </domain>
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (Moderate: OpenShift Virtualization 4.8.0 Images), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2021:2920