Browse Source

bw-limit: Pass int parameters to Open vSwitch

Make sure we pass integer values to ovs when configuring bandwidth
limit. This was likely working properly with Python2, and we may have
missed this when migrating to Python3:

https://www.python.org/dev/peps/pep-0238/

Change-Id: I2f8d974d6644657aea95302d94ca0095d70a7e62
Closes-Bug: #1936839
Co-Authored-By: Tamás Trásy <tamas.trasy@ericsson.com>
(cherry picked from commit 8261b67b6e)
(cherry picked from commit 38551777e0)
(cherry picked from commit 82e2a3d362)
(cherry picked from commit 7687cf1280)
changes/34/822934/2
Bence Romsics 10 months ago committed by Takashi Kajinami
parent
commit
3d77a0596e
  1. 10
      neutron/agent/common/ovs_lib.py

10
neutron/agent/common/ovs_lib.py

@ -837,11 +837,11 @@ class OVSBridge(BaseOVS):
def _update_ingress_bw_limit_for_port(
self, port_name, max_bw_in_bits, max_burst_in_bits):
qos_other_config = {
'max-rate': str(max_bw_in_bits)
'max-rate': str(int(max_bw_in_bits))
}
queue_other_config = {
'max-rate': str(max_bw_in_bits),
'burst': str(max_burst_in_bits),
'max-rate': str(int(max_bw_in_bits)),
'burst': str(int(max_burst_in_bits)),
}
qos = self.find_qos(port_name)
queue = self.find_queue(port_name, QOS_DEFAULT_QUEUE)
@ -865,8 +865,8 @@ class OVSBridge(BaseOVS):
self, port_name, max_bw_in_bits, max_burst_in_bits):
# cir and cbs should be set in bytes instead of bits
qos_other_config = {
'cir': str(max_bw_in_bits / 8),
'cbs': str(max_burst_in_bits / 8)
'cir': str(max_bw_in_bits // 8),
'cbs': str(max_burst_in_bits // 8)
}
qos = self.find_qos(port_name)
qos_uuid = qos['_uuid'] if qos else None

Loading…
Cancel
Save