git://git.onelab.eu
/
sliver-openvswitch.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
new makefile target for error reporting
[sliver-openvswitch.git]
/
lib
/
bond.c
diff --git
a/lib/bond.c
b/lib/bond.c
index
06dd362
..
3834774
100644
(file)
--- a/
lib/bond.c
+++ b/
lib/bond.c
@@
-475,7
+475,7
@@
bond_wait(struct bond *bond)
poll_timer_wait_until(bond->next_fake_iface_update);
}
poll_timer_wait_until(bond->next_fake_iface_update);
}
- if (
!
bond->bond_revalidate) {
+ if (bond->bond_revalidate) {
poll_immediate_wake();
}
ovs_rwlock_unlock(&rwlock);
poll_immediate_wake();
}
ovs_rwlock_unlock(&rwlock);
@@
-661,11
+661,14
@@
bond_choose_output_slave(struct bond *bond, const struct flow *flow,
struct flow_wildcards *wc, uint16_t vlan)
{
struct bond_slave *slave;
struct flow_wildcards *wc, uint16_t vlan)
{
struct bond_slave *slave;
+ void *aux;
ovs_rwlock_rdlock(&rwlock);
slave = choose_output_slave(bond, flow, wc, vlan);
ovs_rwlock_rdlock(&rwlock);
slave = choose_output_slave(bond, flow, wc, vlan);
+ aux = slave ? slave->aux : NULL;
ovs_rwlock_unlock(&rwlock);
ovs_rwlock_unlock(&rwlock);
- return slave;
+
+ return aux;
}
\f
/* Rebalancing. */
}
\f
/* Rebalancing. */