On Tue, Sep 13, 2016 at 7:08 AM, Lance Richardson <lrich...@redhat.com> wrote: > 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 <pshe...@ovn.org> > Signed-off-by: Lance Richardson <lrich...@redhat.com>
Thanks for working on it. Acked-by: Pravin B Shelar <pshe...@ovn.org>