← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1960840] [NEW] tc doesn't support vif quota values bigger than 32 bits unsigned

 

Public bug reported:

tc doesn't support vif quota values bigger than 32 bits unsigned.
libvirt appends "kb" to the vif quota sizes which will definitely , in
some cases, go above the 4294967295 if the customer is specifying a
somehwat reasonable value such as this:

quota:vif_inbound_average=10000
quota:vif_inbound_burst=15000000
quota:vif_inbound_peak=50000
quota:vif_outbound_average=10000
quota:vif_outbound_burst=15000000
quota:vif_outbound_peak=50000 

In this case, the burst size is 15000000 * 1024 = 15360000000 which is
above 4294967295.   The following value makes libvirt fail with this
undecipherable error message:

[root@undercloud-0-rhosp16 ~]# tc class add dev eth0 parent 1: classid 1:1 htb rate 10000 ceil 50000 burst 15000000kb quantum 853
Illegal "buffer"
Usage: ... qdisc add ... htb [default N] [r2q N]
.

We have about 3 ways to fix this:
1)  fix "tc" to not fail if a value is invalid
2)  fix libvirtd to remove the "kb" 
3)  fix nova_compute to fail with an error message or lower the value.

** Affects: nova
     Importance: Undecided
         Status: In Progress

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1960840

Title:
  tc doesn't support vif quota values bigger than 32 bits unsigned

Status in OpenStack Compute (nova):
  In Progress

Bug description:
  tc doesn't support vif quota values bigger than 32 bits unsigned.
  libvirt appends "kb" to the vif quota sizes which will definitely , in
  some cases, go above the 4294967295 if the customer is specifying a
  somehwat reasonable value such as this:

  quota:vif_inbound_average=10000
  quota:vif_inbound_burst=15000000
  quota:vif_inbound_peak=50000
  quota:vif_outbound_average=10000
  quota:vif_outbound_burst=15000000
  quota:vif_outbound_peak=50000 

  In this case, the burst size is 15000000 * 1024 = 15360000000 which is
  above 4294967295.   The following value makes libvirt fail with this
  undecipherable error message:

  [root@undercloud-0-rhosp16 ~]# tc class add dev eth0 parent 1: classid 1:1 htb rate 10000 ceil 50000 burst 15000000kb quantum 853
  Illegal "buffer"
  Usage: ... qdisc add ... htb [default N] [r2q N]
  .

  We have about 3 ways to fix this:
  1)  fix "tc" to not fail if a value is invalid
  2)  fix libvirtd to remove the "kb" 
  3)  fix nova_compute to fail with an error message or lower the value.

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1960840/+subscriptions