Sridhar Samudrala samudrala.sridhar@gmail.com
Srini Seetharaman seethara@stanford.edu
Sabyasachi Sengupta Sabyasachi.Sengupta@alcatel-lucent.com
+Salvatore Cambria salvatore.cambria@citrix.com
Stephen Hemminger shemminger@vyatta.com
Stephen Finucane stephen.finucane@intel.com
Suganya Ramachandran suganyar@vmware.com
static void
update_recirc_rules(struct bond *bond)
+ OVS_REQ_WRLOCK(rwlock)
{
struct match match;
struct bond_pr_rule_op *pr_op, *next_op;
}
}
-void
-bond_update_post_recirc_rules(struct bond* bond, const bool force)
+static void
+bond_update_post_recirc_rules__(struct bond* bond, const bool force)
+ OVS_REQ_WRLOCK(rwlock)
{
struct bond_entry *e;
bool update_rules = force; /* Always update rules if caller forces it. */
update_recirc_rules(bond);
}
}
+
+void
+bond_update_post_recirc_rules(struct bond* bond, const bool force)
+{
+ ovs_rwlock_wrlock(&rwlock);
+ bond_update_post_recirc_rules__(bond, force);
+ ovs_rwlock_unlock(&rwlock);
+}
\f
/* Rebalancing. */
}
if (use_recirc && rebalanced) {
- bond_update_post_recirc_rules(bond,true);
+ bond_update_post_recirc_rules__(bond,true);
}
done: