From: Ethan Jackson Date: Thu, 19 May 2011 22:52:54 +0000 (-0700) Subject: xenserver: Pull slave MTU from bond record. X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c64540e3fe43a83bbe8687c53fb7fdec95b94195;p=openvswitch xenserver: Pull slave MTU from bond record. The MTU of the fake bond interface and the slaves participating in a bond should all agree. The correct long term solution to this problem is to remove the fake bond interface altogether. Until that's possible, we simply set the MTU of the slaves. Signed-off-by: Ethan Jackson --- diff --git a/xenserver/opt_xensource_libexec_InterfaceReconfigureVswitch.py b/xenserver/opt_xensource_libexec_InterfaceReconfigureVswitch.py index 697df5f1..10c6bd20 100644 --- a/xenserver/opt_xensource_libexec_InterfaceReconfigureVswitch.py +++ b/xenserver/opt_xensource_libexec_InterfaceReconfigureVswitch.py @@ -571,6 +571,12 @@ class DatapathVswitch(Datapath): # when they are added, and a network device that is down # always reports "no carrier". physical_devices = datapath_get_physical_pifs(self._dp) + + if pif_is_bond(self._dp): + brec = db().get_pif_record(self._dp) + bond_mtu = mtu_setting(brec['network'], "PIF", brec['other_config']) + else: + bond_mtu = None for p in physical_devices: prec = db().get_pif_record(p) @@ -578,7 +584,10 @@ class DatapathVswitch(Datapath): dev = pif_netdev_name(p) - mtu = mtu_setting(prec['network'], "PIF", oc) + if bond_mtu: + mtu = bond_mtu + else: + mtu = mtu_setting(prec['network'], "PIF", oc) netdev_up(dev, mtu)