Fixed according to comments from Ben. v1-v2: - Refresh iface on every iface create.
--8<--------------------------cut here-------------------------->8-- There is no need to refresh status and stats for existing devices if iface mtu is missing in ovs-db as missing MTU could just mean error in last MTU read for that device. So we can just refresh stats for devices which are just created. Signed-off-by: Pravin B Shelar <pshe...@nicira.com> --- vswitchd/bridge.c | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-) diff --git a/vswitchd/bridge.c b/vswitchd/bridge.c index 7e24937..2ea146c 100644 --- a/vswitchd/bridge.c +++ b/vswitchd/bridge.c @@ -75,6 +75,7 @@ struct iface { struct netdev *netdev; /* Network device. */ const char *type; /* Usually same as cfg->type. */ const struct ovsrec_interface *cfg; + bool need_refresh; /* Refresh iface after create. */ }; struct mirror { @@ -1189,9 +1190,10 @@ bridge_add_ofproto_ports(struct bridge *br) } /* Populate stats columns in new Interface rows. */ - if (iface->netdev && !iface->cfg->mtu) { + if (iface->netdev && iface->need_refresh) { iface_refresh_stats(iface); iface_refresh_status(iface); + iface->need_refresh = false; } /* Delete the iface if we failed. */ @@ -2929,6 +2931,7 @@ iface_create(struct port *port, const struct ovsrec_interface *if_cfg) iface->tag = tag_create_random(); iface->netdev = NULL; iface->cfg = if_cfg; + iface->need_refresh = true; hmap_insert(&br->iface_by_name, &iface->name_node, hash_string(name, 0)); -- 1.7.1 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev