On Tue, Mar 18, 2014 at 4:40 PM, Ben Pfaff <b...@nicira.com> wrote:

> On Fri, Mar 14, 2014 at 03:06:19PM -0700, Andy Zhou wrote:
> > Acked-by: Andy Zhou <az...@nicira.com>
> >
> >
> > On Tue, Mar 11, 2014 at 1:56 PM, Ben Pfaff <b...@nicira.com> wrote:
> > > +void *
> > > +ovsthread_stats_bucket_get(struct ovsthread_stats *stats,
> > > +                           void *(*new_bucket)(void))
> > >  {
> > > -    c = &c[hash_int(ovsthread_id_self(), 0) % N_COUNTERS];
> > > -
> > > -    ovs_mutex_lock(&c->c.mutex);
> > > -    c->c.value += n;
> > > -    ovs_mutex_unlock(&c->c.mutex);
> > > +    unsigned int hash = hash_int(ovsthread_id_self(), 0);
> > > +    unsigned int idx = hash & (ARRAY_SIZE(stats->buckets) - 1);
> > >
> >
> > What's the advantage of using hashing over mod here ?
>
> Do you mean, of hashing ovsthread_id_self() over just using it raw?  I
> guess I just hadn't considered using it raw.  It is probably good
> enough, so if that's what you mean then I'll use it that way.
>

Yes, this is what I mean. I don't know how good or bad using it raw will
be. Just point out as a possibility.
 I assume mod will be cheaper than doing a hash here.

>
> >
> > > +    void *bucket = stats->buckets[idx];
> > >
> > What's the advantage
>
> You didn't finish the thought there.
>
This is the same comment as above.
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to