Uploaded image for project: 'RHEL'
  1. RHEL
  2. RHEL-45200

To reject humongous/big inbound average values during parsing

    • libvirt-10.8.0-1.el9
    • None
    • Moderate
    • rhel-sst-virtualization
    • ssg_virtualization
    • 11
    • 5
    • Dev ack
    • False
    • Hide

      None

      Show
      None
    • None
    • None
    • 10.7.0
    • None

      What were you trying to do that didn't work?

      Big inbound value such as 100000000000000000kbps does not fit into 64 bits as tc stores values in bps internally. Worse, some values were stored in 32 bits (in older version of iproute). 

      Please provide the package NVR for which bug is seen:

      libvirt-10.4.0-1.el9.x86_64

      libvirt-10.4.0-1.el10.x86_64

      How reproducible:

      100%

      Steps to reproduce

      1. start a vm with big qos value which does not fit into 64 bits as tc stores values in bps internally, reports error:
      <interface type="network">
        <mac address="52:54:00:f2:fe:d6"/>
        <source network="default"/>
        <bandwidth>
          <inbound average="100000000000000000" peak="5000" burst="1024"/>
        </bandwidth>
        <model type="virtio"/>
        <address type="pci" domain="0x0000" bus="0x01" slot="0x00" function="0x0"/>
      </interface> 
      
      # virsh start avocado-vt-vm1 
      error: Failed to start domain 'avocado-vt-vm1'
      error: internal error: Child process (tc class add dev vnet1 parent 1: classid 1:1 htb rate 100000000000000000kbps ceil 5000kbps burst 1024kb quantum 4294967295) unexpected exit status 1: "rate" is required.
      
      2024-06-26 07:02:01.320+0000: 136091: error : virCommandWait:2773 : internal error: Child process (tc class add dev vnet1 parent 1: classid 1:1 htb rate 100000000000000000kbps ceil 5000kbps burst 1024kb quantum 4294967295) unexpected exit status 1: "rate" is required. 

       

      Expected results

      Reject such big value when 'virsh define' or 'virsh start', before parsing to tc.

      Actual results

      Additional info:

      It can not be added by 'virsh edit' or pass 'virt-xml-validate'.

              mprivozn@redhat.com Michal Privoznik
              yanqzhan1@redhat.com Yanqiu Zhang
              Haijiao Zhao
              virt-maint virt-maint
              Yanqiu Zhang Yanqiu Zhang
              Votes:
              0 Vote for this issue
              Watchers:
              11 Start watching this issue

                Created:
                Updated: