The connmgr_wants_packet_in_on_miss() should only check 'ofconn's
of type OFCONN_PRIMARY (i.e. controller connections).  This commit
makes it happen.

Signed-off-by: Alex Wang <al...@nicira.com>
---
 ofproto/connmgr.c |   16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/ofproto/connmgr.c b/ofproto/connmgr.c
index 89af6b6..49ced1f 100644
--- a/ofproto/connmgr.c
+++ b/ofproto/connmgr.c
@@ -1512,13 +1512,15 @@ connmgr_wants_packet_in_on_miss(struct connmgr *mgr) 
OVS_EXCLUDED(ofproto_mutex)
 
     ovs_mutex_lock(&ofproto_mutex);
     LIST_FOR_EACH (ofconn, node, &mgr->all_conns) {
-        enum ofputil_protocol protocol = ofconn_get_protocol(ofconn);
-
-        if (ofconn->controller_id == 0 &&
-            (protocol == OFPUTIL_P_NONE ||
-             ofputil_protocol_to_ofp_version(protocol) < OFP13_VERSION)) {
-            ovs_mutex_unlock(&ofproto_mutex);
-            return true;
+        if (ofconn->type == OFCONN_PRIMARY) {
+            enum ofputil_protocol protocol = ofconn_get_protocol(ofconn);
+
+            if (ofconn->controller_id == 0 &&
+                (protocol == OFPUTIL_P_NONE ||
+                 ofputil_protocol_to_ofp_version(protocol) < OFP13_VERSION)) {
+                ovs_mutex_unlock(&ofproto_mutex);
+                return true;
+            }
         }
     }
     ovs_mutex_unlock(&ofproto_mutex);
-- 
1.7.9.5

_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to