ovs-monitor-ipsec: Detect correctly IPSEC configuration changes
[sliver-openvswitch.git] / vswitchd / bridge.c
index 5b0f66f..4761cbf 100644 (file)
@@ -438,8 +438,12 @@ bridge_reconfigure(const struct ovsrec_open_vswitch *ovs_cfg)
      * has at least one iface, every "struct iface" has a valid ofp_port and
      * netdev. */
     HMAP_FOR_EACH_SAFE (br, next, node, &all_bridges) {
-        if (!br->ofproto && !bridge_add_ofprotos(br)) {
-            bridge_destroy(br);
+        if (!br->ofproto) {
+            if (bridge_add_ofprotos(br)) {
+                bridge_del_ofproto_ports(br);
+            } else {
+                bridge_destroy(br);
+            }
         }
     }
     HMAP_FOR_EACH (br, node, &all_bridges) {
@@ -842,7 +846,7 @@ port_configure_stp(const struct ofproto *ofproto, struct port *port,
     if (config_str) {
         port_s->path_cost = strtoul(config_str, NULL, 10);
     } else {
-        uint32_t current;
+        enum netdev_features current;
 
         if (netdev_get_features(iface->netdev, &current, NULL, NULL, NULL)) {
             /* Couldn't get speed, so assume 100Mb/s. */
@@ -1479,8 +1483,8 @@ iface_refresh_status(struct iface *iface)
 {
     struct shash sh;
 
+    enum netdev_features current;
     enum netdev_flags flags;
-    uint32_t current;
     int64_t bps;
     int mtu;
     int64_t mtu_64;
@@ -3196,11 +3200,6 @@ iface_configure_qos(struct iface *iface, const struct ovsrec_qos *qos)
             shash_destroy(&details);
         }
         if (!queue_zero) {
-            static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(1, 1);
-            VLOG_WARN_RL(&rl, "interface %s: QoS configured without a default "
-                         "queue (queue 0).  Using default configuration.",
-                         iface->name);
-
             shash_init(&details);
             netdev_set_queue(iface->netdev, 0, &details);
             shash_destroy(&details);