Pushed. Sorry it took a while because of the office move.
On Mon, Apr 14, 2014 at 1:20 AM, Andy Zhou <az...@nicira.com> wrote: > Not a problem I was planing to push both patches in the morning (PST_ > if we can resolve 2nd patch soon. At any rate, I will push this patch > in the morning. > > On Mon, Apr 14, 2014 at 12:46 AM, Joe Stringer <j...@wand.net.nz> wrote: >> Thanks. I don't have push access, could you take care of that? >> >> >> On 14 April 2014 18:47, Andy Zhou <az...@nicira.com> wrote: >>> >>> Looks good. Thanks. >>> Acked-by: Andy Zhou <az...@nicira.com> >>> >>> On Sun, Apr 13, 2014 at 10:30 PM, Joe Stringer <j...@wand.net.nz> wrote: >>> > From: Joe Stringer <joestrin...@nicira.com> >>> > >>> > Add a constant for the number of bond buckets, and other minor cleanups. >>> > >>> > Signed-off-by: Joe Stringer <joestrin...@nicira.com> >>> > --- >>> > ofproto/bond.c | 14 +++++++------- >>> > 1 file changed, 7 insertions(+), 7 deletions(-) >>> > >>> > diff --git a/ofproto/bond.c b/ofproto/bond.c >>> > index 49dd49e..8554955 100644 >>> > --- a/ofproto/bond.c >>> > +++ b/ofproto/bond.c >>> > @@ -53,13 +53,13 @@ static struct ovs_rwlock rwlock = >>> > OVS_RWLOCK_INITIALIZER; >>> > static struct hmap all_bonds__ = HMAP_INITIALIZER(&all_bonds__); >>> > static struct hmap *const all_bonds OVS_GUARDED_BY(rwlock) = >>> > &all_bonds__; >>> > >>> > -/* Bit-mask for hashing a flow down to a bucket. >>> > - * There are (BOND_MASK + 1) buckets. */ >>> > +/* Bit-mask for hashing a flow down to a bucket. */ >>> > #define BOND_MASK 0xff >>> > +#define BOND_BUCKETS (BOND_MASK + 1) >>> > #define RECIRC_RULE_PRIORITY 20 /* Priority level for internal rules >>> > */ >>> > >>> > /* A hash bucket for mapping a flow to a slave. >>> > - * "struct bond" has an array of (BOND_MASK + 1) of these. */ >>> > + * "struct bond" has an array of BOND_BUCKETS of these. */ >>> > struct bond_entry { >>> > struct bond_slave *slave; /* Assigned slave, NULL if unassigned. >>> > */ >>> > uint64_t tx_bytes; /* Count of bytes recently transmitted. >>> > */ >>> > @@ -122,7 +122,7 @@ struct bond { >>> > uint32_t basis; /* Basis for flow hash function. */ >>> > >>> > /* SLB specific bonding info. */ >>> > - struct bond_entry *hash; /* An array of (BOND_MASK + 1) >>> > elements. */ >>> > + struct bond_entry *hash; /* An array of BOND_BUCKETS elements. >>> > */ >>> > int rebalance_interval; /* Interval between rebalances, in ms. >>> > */ >>> > long long int next_rebalance; /* Next rebalancing time. */ >>> > bool send_learning_packets; >>> > @@ -159,7 +159,7 @@ static void bond_enable_slave(struct bond_slave *, >>> > bool enable) >>> > static void bond_link_status_update(struct bond_slave *) >>> > OVS_REQ_WRLOCK(rwlock); >>> > static void bond_choose_active_slave(struct bond *) >>> > - OVS_REQ_WRLOCK(rwlock);; >>> > + OVS_REQ_WRLOCK(rwlock); >>> > static unsigned int bond_hash_src(const uint8_t mac[ETH_ADDR_LEN], >>> > uint16_t vlan, uint32_t basis); >>> > static unsigned int bond_hash_tcp(const struct flow *, uint16_t vlan, >>> > @@ -330,7 +330,7 @@ update_recirc_rules(struct bond *bond) >>> > return; >>> > } >>> > >>> > - for (i = 0; i < BOND_MASK + 1; i++) { >>> > + for (i = 0; i < BOND_BUCKETS; i++) { >>> > struct bond_slave *slave = bond->hash[i].slave; >>> > >>> > if (slave) { >>> > @@ -1570,7 +1570,7 @@ static void >>> > bond_entry_reset(struct bond *bond) >>> > { >>> > if (bond->balance != BM_AB) { >>> > - size_t hash_len = (BOND_MASK + 1) * sizeof *bond->hash; >>> > + size_t hash_len = BOND_BUCKETS * sizeof *bond->hash; >>> > >>> > if (!bond->hash) { >>> > bond->hash = xmalloc(hash_len); >>> > -- >>> > 1.7.10.4 >>> > >> >> _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev