From f05e1e6d057db28dcd9703de85c853552c93a603 Mon Sep 17 00:00:00 2001 From: Roopa Prabhu Date: Sat, 23 Apr 2016 22:32:14 -0700 Subject: [PATCH] addons: bridge: call bridge vlan show only if we have attributes that need them Ticket: CM-10273 Reviewed By: Testing Done: Tested with scale interfaces file in the bug This reduces 250 unnecessary 'bridge -c vlan show' commands Signed-off-by: Roopa Prabhu --- addons/bridge.py | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/addons/bridge.py b/addons/bridge.py index 646d3c2..e1cbf70 100644 --- a/addons/bridge.py +++ b/addons/bridge.py @@ -512,17 +512,21 @@ class bridge(moduleBase): # Supports old style vlan vid info format # for compatibility # + bridge_port_pvids = ifaceobj.get_attr_value_first('bridge-port-pvids') + bridge_port_vids = ifaceobj.get_attr_value_first('bridge-port-vids') + if not bridge_port_pvids and not bridge_port_vids: + return # Handle bridge vlan attrs running_vidinfo = self._get_running_vidinfo() # Install pvids - attrval = ifaceobj.get_attr_value_first('bridge-port-pvids') - if attrval: - portlist = self.parse_port_list(ifaceobj.name, attrval) + if bridge_port_pvids: + portlist = self.parse_port_list(ifaceobj.name, bridge_port_pvids) if not portlist: self.log_warn('%s: could not parse \'%s %s\'' - %(ifaceobj.name, attrname, attrval)) + %(ifaceobj.name, 'bridge-port-pvids', + bridge_port_pvids)) return for p in portlist: try: @@ -539,12 +543,11 @@ class bridge(moduleBase): %(ifaceobj.name, p, str(e))) # install port vids - attrval = ifaceobj.get_attr_value_first('bridge-port-vids') - if attrval: - portlist = self.parse_port_list(ifaceobj.name, attrval) + if bridge_port_vids: + portlist = self.parse_port_list(ifaceobj.name, bridge_port_vids) if not portlist: - self.log_warn('%s: could not parse \'%s %s\'' - %(ifaceobj.name, attrname, attrval)) + self.log_warn('%s: could not parse \'%s %s\'' %(ifaceobj.name, + 'bridge-port-vids', bridge_port_vids)) return for p in portlist: try: