ovs-ctl: Drop back to an empty database if schema conversion fails.
[openvswitch] / lib / learning-switch.c
index 269f0301d2ee6c6ad87c696622b57536f8d2f744..4a5d88918f1e5c075a232e2e8b8265be98abca0a 100644 (file)
@@ -106,8 +106,9 @@ lswitch_create(struct rconn *rconn, const struct lswitch_config *cfg)
         if (cfg->wildcards == UINT32_MAX) {
             /* Try to wildcard as many fields as possible, but we cannot
              * wildcard all fields.  We need in_port to detect moves.  We need
-             * Ethernet source and dest and VLAN to do L2 learning. */
-            ofpfw = (OFPFW_DL_TYPE | OFPFW_NW_SRC_ALL | OFPFW_NW_DST_ALL
+             * Ethernet source and dest and VLAN VID to do L2 learning. */
+            ofpfw = (OFPFW_DL_TYPE | OFPFW_DL_VLAN_PCP
+                     | OFPFW_NW_SRC_ALL | OFPFW_NW_DST_ALL
                      | OFPFW_NW_TOS | OFPFW_NW_PROTO
                      | OFPFW_TP_SRC | OFPFW_TP_DST);
         } else {
@@ -224,7 +225,7 @@ lswitch_process_packet(struct lswitch *sw, struct rconn *rconn,
         /* Nothing to do. */
         break;
 
-    case OFPUTIL_INVALID:
+    case OFPUTIL_MSG_INVALID:
     case OFPUTIL_OFPT_HELLO:
     case OFPUTIL_OFPT_ERROR:
     case OFPUTIL_OFPT_ECHO_REPLY: