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

To reject humongous/big inbound average values during parsing

    • None
    • None
    • sst_virtualization
    • ssg_virtualization
    • 5
    • Dev ack
    • False
    • Hide

      None

      Show
      None
    • None
    • 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
            virt-maint virt-maint
            Yanqiu Zhang Yanqiu Zhang
            Votes:
            0 Vote for this issue
            Watchers:
            9 Start watching this issue

              Created:
              Updated: