-
Bug
-
Resolution: Unresolved
-
Undefined
-
None
-
rhel-10.0
-
No
-
Low
-
rhel-sst-virtualization
-
ssg_virtualization
-
None
-
False
-
-
None
-
None
-
None
-
None
-
-
x86_64
-
None
What were you trying to do that didn't work?
Improve error msg when executing 'virsh domiftune' with inbound burst larger than maximum boundary
What is the impact of this issue to you?
Please provide the package NVR for which the bug is seen:
libvirt-10.8.0-3.el10.x86_64
How reproducible is this bug?:
100%
Steps to reproduce
- Execute 'virsh domiftune' with inbound burst larger than max value:
# /bin/virsh domiftune avocado-vt-vm1 vnet15 --inbound 1024000,4096,4194304 --current error: Unable to set interface parameters error: internal error: Child process (tc class add dev vnet15 parent 1: classid 1:1 htb rate 1024000kbps ceil 4096kbps burst 4194304kb quantum 87381) unexpected exit status 1: Illegal "burst" Usage: ... qdisc add ... htb [default N] [r2q N] [direct_qlen P] [offload] default minor id of class to which unclassified packets are sent {0} r2q DRR quantums are computed as rate in Bps/r2q {10} debug string of 16 numbers each 0-3 {0} direct_qlen Limit of the direct queue {in packets} offload enable hardware offload ... class add ... htb rate R1 [burst B1] [mpu B] [overhead O] [prio P] [slot S] [pslot PS] [ceil R2] [cburst B2] [mtu MTU] [quantum Q] rate rate allocated to this class (class can still borrow) burst max bytes burst which can be accumulated during idle period {computed} mpu minimum packet size used in rate computations overhead per-packet size overhead used in rate computations linklay adapting to a linklayer e.g. atm ceil definite upper class rate (no borrows) {rate} cburst burst but for ceil {computed} mtu max packet size we create rate map for {1600} prio priority of leaf; lower are served first {0} quantum how much bytes to serve from leaf at once {use r2q}TC HTB version 3.3
2. Execute 'virsh domiftune' with outbound burst larger than max value:
# /bin/virsh domiftune avocado-vt-vm1 vnet15 --outbound 1024000,4096,4194304 --current error: Unable to set interface parameters error: internal error: Child process (tc filter add dev vnet15 parent ffff: protocol all u32 match u32 0 0 police rate 1024000kbps burst 4194304kb mtu 64kb drop flowid :1) unexpected exit status 255: Error: argument "4194304kb" is wrong: buffer
3.Update the inbound burst larger than max value can report clear error msg:
#cat if.xml<interface type="network"> <mac address="52:54:00:96:fd:1b"/> <source network="default" portid="531f32c0-bc7d-4785-b79c-739b71caaf57" bridge="virbr0"/> <bandwidth> <inbound average="429496729600" peak="429496729600" burst="429496729600"/> </bandwidth> <target dev="vnet15"/> <model type="virtio"/> <driver queues="2"/> <alias name="net0"/> <address type="pci" domain="0x0000" bus="0x01" slot="0x00" function="0x0"/> </interface> # virsh update-device avocado-vt-vm1 if11.xml error: Failed to update device from if11.xml error: numerical overflow: value '429496729600' is too big for 'burst' parameter, maximum is '4194303'
Expected results
Report clear error msg such as:
#virsh domiftune vm2 vnet13 -inbound 102400,4096,4194304 -current
error: inbound burst larger than maximum 4194303