[ovs-dev] [PATCH 2/2] bond: fix dead lock bug

YAMAMOTO Takashi yamamoto at valinux.co.jp
Wed May 7 05:11:00 UTC 2014


> The bug fixed by the last patch exposes this one.
> 
> Signed-off-by: Andy Zhou <azhou at nicira.com>

Reviewed-by: YAMAMOTO Takashi <yamamoto at valinux.co.jp>

> ---
>  ofproto/bond.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/ofproto/bond.c b/ofproto/bond.c
> index c522ea3..803408b 100644
> --- a/ofproto/bond.c
> +++ b/ofproto/bond.c
> @@ -863,10 +863,10 @@ bond_entry_account(struct bond_entry *entry, uint64_t rule_tx_bytes)
>  /* Maintain bond stats using post recirculation rule byte counters.*/
>  static void
>  bond_recirculation_account(struct bond *bond)
> +    OVS_REQ_WRLOCK(rwlock)
>  {
>      int i;
>  
> -    ovs_rwlock_wrlock(&rwlock);
>      for (i=0; i<=BOND_MASK; i++) {
>          struct bond_entry *entry = &bond->hash[i];
>          struct rule *rule = entry->pr_rule;
> @@ -881,7 +881,6 @@ bond_recirculation_account(struct bond *bond)
>              bond_entry_account(entry, n_bytes);
>          }
>      }
> -    ovs_rwlock_unlock(&rwlock);
>  }
>  
>  bool
> -- 
> 1.9.1
> 
> _______________________________________________
> dev mailing list
> dev at openvswitch.org
> http://openvswitch.org/mailman/listinfo/dev



More information about the dev mailing list