bridge: Always wait for MAC learning table and ports.
authorBen Pfaff <blp@nicira.com>
Tue, 29 Mar 2011 17:08:16 +0000 (10:08 -0700)
committerBen Pfaff <blp@nicira.com>
Tue, 29 Mar 2011 17:12:22 +0000 (10:12 -0700)
The test ofproto_has_primary_controller() is meaningless, since OFPP_NORMAL
can cause the MAC learning table and port bonding to be in use even when
there is a controller.

I see that this bug has been here since early 2009, when the OFPP_NORMAL
feature was introduced in the bridge.  (Obviously it's not a severe
problem.)

vswitchd/bridge.c

index 9660aef..bf89778 100644 (file)
@@ -1464,12 +1464,7 @@ bridge_wait(void)
         struct port *port;
 
         ofproto_wait(br->ofproto);
-        if (ofproto_has_primary_controller(br->ofproto)) {
-            continue;
-        }
-
         mac_learning_wait(br->ml);
-
         HMAP_FOR_EACH (port, hmap_node, &br->ports) {
             port_wait(port);
         }