>
> 1) Use refs for buckets (this seems unnecessarily heavyweight)
> 2) Always try bucket_lookup when adding stats to a bucket via the cache.
> If the bucket is not there in the list, we know its been removed via
> modify_group() and we simply don't update stats.
> 3) Use ofgroup->rw_lock to protect writing to stats via the xlate cache
> (this seems to break modularity in the code but it would be the simplest
> to do).
> 4) Similar to netdev, remove the group then re-add the group to ofproto
> instead of modifying the group in place. Thus, the bucket will only be
> invalid when its group parent is also invalid.

On balance, #4 seems to be the most straight forward way of dealing with it.

>
> Let me know if you have any other ideas. I don't particularly like any of
> these, but these are what I could come up with on the top of my head.

How about we remove the rwlock and only use ref count?
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to