[ovs-dev] [PATCH net-next] openvswitch: avoid deferred execution of recirc actions

David Miller davem at davemloft.net
Fri Sep 16 00:36:41 UTC 2016


From: Lance Richardson <lrichard at redhat.com>
Date: Tue, 13 Sep 2016 10:08:54 -0400

> The ovs kernel data path currently defers the execution of all
> recirc actions until stack utilization is at a minimum.
> This is too limiting for some packet forwarding scenarios due to
> the small size of the deferred action FIFO (10 entries). For
> example, broadcast traffic sent out more than 10 ports with
> recirculation results in packet drops when the deferred action
> FIFO becomes full, as reported here:
> 
>      http://openvswitch.org/pipermail/dev/2016-March/067672.html
> 
> Since the current recursion depth is available (it is already tracked
> by the exec_actions_level pcpu variable), we can use it to determine
> whether to execute recirculation actions immediately (safe when
> recursion depth is low) or defer execution until more stack space is
> available.
> 
> With this change, the deferred action fifo size becomes a non-issue
> for currently failing scenarios because it is no longer used when
> there are three or fewer recursions through ovs_execute_actions().
> 
> Suggested-by: Pravin Shelar <pshelar at ovn.org>
> Signed-off-by: Lance Richardson <lrichard at redhat.com>

Applied.



More information about the dev mailing list