[ovs-git] Open vSwitch: datapath: handle recirculation loop detection (master)

dev at openvswitch.org dev at openvswitch.org
Thu May 1 23:03:42 UTC 2014


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Open vSwitch".

The branch, master has been updated
       via  ca93abce9d3c6b7968c52a5458a6c94e7e8191d4 (commit)
      from  a6fcf462476db3385027d3bfcc1d2dc8386e6f2a (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit ca93abce9d3c6b7968c52a5458a6c94e7e8191d4
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=ca93abce9d3c6b7968c52a5458a6c94e7e8191d4
Author: Andy Zhou <azhou at nicira.com>
		
datapath: handle recirculation loop detection
		
Current datapath limits the number of times same packet can loop
through action execution to avoid blowing out the kernel stack.
Recirculation also adds to action execution count, but does not use
the same amount of stack compare to other services, such as IPsec.

This patch introduces the concept of stack cost. Recirculation has a
stack cost of 1 while other services have stack cost of 4. Datapath
packet process can accommodate packets that need both services and
recirculation as long as the total stack cost does not exceed the max
stack cost. Packets exceed the limit will be treated as looped packets
and dropped.

The max stack cost is set to allow up to 4 regular services, plus up
to 3 recirculation. The behavior of packets do not recirculate does
not change.

Signed-off-by: Andy Zhou <azhou at nicira.com>
Acked-by: Jesse Gross <jesse at nicira.com>


-----------------------------------------------------------------------

Summary of changes:
 datapath/actions.c  |   30 ++++++++++++++++++++----------
 datapath/datapath.c |    9 +++++----
 datapath/datapath.h |    4 ++--
 3 files changed, 27 insertions(+), 16 deletions(-)


hooks/post-receive
-- 
Open vSwitch



More information about the git mailing list