[ovs-dev] [4806] vswitchd: Initialize configuration on active-backup bonds.
Ethan Jackson
ethan at nicira.com
Fri Mar 4 19:43:45 UTC 2011
Some configuration settings which were not balance-[slb|tcp]
specific were only initialized for these bond types.
Bug #4806.
---
vswitchd/bridge.c | 20 ++++++++++++++------
1 files changed, 14 insertions(+), 6 deletions(-)
diff --git a/vswitchd/bridge.c b/vswitchd/bridge.c
index eadafb0..1558d3b 100644
--- a/vswitchd/bridge.c
+++ b/vswitchd/bridge.c
@@ -4527,6 +4527,8 @@ port_update_bonding(struct port *port)
free(port->bond_hash);
port->bond_hash = NULL;
port->bond_fake_iface = false;
+ port->active_iface = -1;
+ port->no_ifaces_tag = 0;
} else {
size_t i;
@@ -4537,19 +4539,25 @@ port_update_bonding(struct port *port)
e->iface_idx = -1;
e->tx_bytes = 0;
}
- port->no_ifaces_tag = tag_create_random();
- bond_choose_active_iface(port);
port->bond_next_rebalance
= time_msec() + port->bond_rebalance_interval;
-
- if (port->cfg->bond_fake_iface) {
- port->bond_next_fake_iface_update = time_msec();
- }
} else if (port->bond_mode == BM_AB) {
free(port->bond_hash);
port->bond_hash = NULL;
}
+
+ if (!port->no_ifaces_tag) {
+ port->no_ifaces_tag = tag_create_random();
+ }
+
+ if (port->active_iface < 0) {
+ bond_choose_active_iface(port);
+ }
+
port->bond_fake_iface = port->cfg->bond_fake_iface;
+ if (port->bond_fake_iface) {
+ port->bond_next_fake_iface_update = time_msec();
+ }
if (!port->miimon) {
port->monitor = netdev_monitor_create();
--
1.7.4.1
More information about the dev
mailing list