On Wed, Sep 25, 2013 at 05:41:08PM -0700, Jarno Rajahalme wrote: > On Sep 25, 2013, at 3:42 PM, Ben Pfaff <b...@nicira.com> wrote: > > > It's easy to add two tags together, but it's hard to subtract them. The > > new "tag_tracker" data structure provides a solution. > > At first the tracker implementation seems heavy, but then the tag ever > only contains two bits set.
Right. I used the general loop in case someone decided to add a union of tags, but ordinarily the loop will iterate exactly twice. > The tag collection now takes more space, maybe we do not need full 64 > bits for each counter? An unsigned int is usually 32 bits. I thought about other possibilities. One would be to use smaller counters, for example 16 bits. There can definitely be more than 65535 flows per table, and I would not want the implementation to break in corner case. Therefore, I suppose that we would have to make the counters saturate at 65535 and from then on never decrease. _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev