On Fri, Jun 12, 2015 at 02:36:23PM -0700, Jarno Rajahalme wrote:
> Previous patch adds more work being executed from the ovs-rcu thread.
> Executing big chunks of work from ovs-rcu thread should be avoided,
> however, as the rcu callback facility is shared resource used by all
> threads.
> 
> This patch generalizes the exising "rule_executes" list to be useful
> for also other kinds of work items.  First new use is for sending flow
> removed messages from the main thread instead of the ovs-rcu thread.
> 
> Even more work could be executed outside of the ovs-rcu thread if the
> size of the 'deferred_work' list was made unlimited.
> 
> Signed-off-by: Jarno Rajahalme <jrajaha...@nicira.com>

I'd like to sit on this.  I am not sure whether it is OK to drop
flow_removed messages.  The implications of queuing an unlimited number
of them are also bad.  We're doing that already, but there's some
back-pressure currently (I think) from the way that we refuse to process
any more OpenFlow requests if there are messages in the OpenFlow send
queue, and I think that this new deferred work queue would bypass that.

I'm also not sure to what extent anyone in the real world uses
flow_removed messages, so I don't know whether processing them in RCU
callbacks really matters.
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to