DVR: Correctly change MTU in fip namespace

The code that ensures the fpr/rfp veth pair exists
between the qrouter and fip namespace was only setting
the mtu of the devices if it had to create them.  Set
it all the time to support the mtu being changed.

Change-Id: I176b5f4d4f12cf09f930e2c1944e98082a09bcc6
Closes-bug: #1823798
(cherry picked from commit 6ded6d217a)
This commit is contained in:
Brian Haley 2019-04-09 15:08:32 -04:00 committed by Brian Haley
parent 9f05f36423
commit ee682138b9
2 changed files with 8 additions and 6 deletions

View File

@ -424,12 +424,13 @@ class FipNamespace(namespaces.Namespace):
rtr_2_fip_dev, fip_2_rtr_dev = ip_wrapper.add_veth(rtr_2_fip_name,
fip_2_rtr_name,
fip_ns_name)
rtr_2_fip_dev.link.set_up()
fip_2_rtr_dev.link.set_up()
mtu = ri.get_ex_gw_port().get('mtu')
if mtu:
rtr_2_fip_dev.link.set_mtu(mtu)
fip_2_rtr_dev.link.set_mtu(mtu)
rtr_2_fip_dev.link.set_up()
fip_2_rtr_dev.link.set_up()
self._add_cidr_to_device(rtr_2_fip_dev, str(rtr_2_fip))
self._add_cidr_to_device(fip_2_rtr_dev, str(fip_2_rtr))

View File

@ -297,9 +297,10 @@ class TestDvrFipNs(base.BaseTestCase):
fip_2_rtr_name,
fip_ns_name)
self.assertEqual(2, device.link.set_up.call_count)
device.link.set_mtu.assert_called_with(2000)
self.assertEqual(2, device.link.set_mtu.call_count)
self.assertEqual(2, device.link.set_up.call_count)
if not addr_exists:
expected = [mock.call(str(addr_pair[0]), add_broadcast=False),