On 07/11/14 at 09:28am, Flavio Leitner wrote:
> On Fri, Jul 11, 2014 at 11:27:09AM +1200, Joe Stringer wrote:
> > On 11 July 2014 04:53, Flavio Leitner <f...@redhat.com> wrote:
> > 
> > > Can we push the cache construction to later that it doesn't impact
> > > either flow setup or flow dump? I.e. like a workqueue? I don't know
> > > if we have such facility.
> > 
> > 
> > I'm open to the idea, but completely unfamiliar with how these work. I can
> > take a look into this as well.
> 
> Workqueue is a kernel's facility to defer the work. You can indicate how
> much time from now it should execute it and the work to be done, similar
> to timers.
> 
> The idea was to schedule the cache construction in some way that it
> doesn't happen during flow setup or flow dump.

I actually considered proposing this as well. It would ideally batch
multiple cache constructions together though. A good assembly point is
when the data is actually needed which lead me to the dump operation.
The get and delete flow cases come for free anyway as we hold ovs_lock().

The difference is that the dump may take the lock even if no cache
construction is needed but that could be optimized by having the dump
function only take the lock if construction is needed and then keeping
it until the message is fully constructed.

I agree though that the alternative idea of fixing up the key is more
attractive if that is doable.
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to