[ovs-git] Open vSwitch: meta-flow: Make 'in_port' field writable. (master)

dev at openvswitch.org dev at openvswitch.org
Wed May 8 17:25:41 UTC 2013


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  557323cd11f0b02c0dc755f65699895df02781de (commit)
       via  94aa0d197d3898264ed9761dd5a2089fed40fca3 (commit)
      from  ccc096898c4618e8869a7696b40ca7f17e8b9560 (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 557323cd11f0b02c0dc755f65699895df02781de
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=557323cd11f0b02c0dc755f65699895df02781de
Author: Ben Pfaff <blp at nicira.com>
		
meta-flow: Make 'in_port' field writable.
		
OpenFlow says that an "output" action to a flow's input port is ordinarily
dropped, unless the flow explicitly outputs to OFPP_IN_PORT.  We've
occasionally been asked to implement some way to avoid this behavior in
cases where it is not easily known in advance whether a given port is the
input port (so that OFPP_IN_PORT is not easy to use).

This commit implements such a feature.  With this commit, one may write:
    actions=load:0->NXM_OF_IN_PORT[],output:123
which will output to port 123 regardless of whether it is the input port.
If the input port is important, then one may save and restore it on the
stack:
    actions=push:NXM_OF_IN_PORT[],load:0->NXM_OF_IN_PORT[],output:123,
            pop:NXM_OF_IN_PORT[]

(Sometimes I am asked whether "resubmit" changes the in_port and would
therefore interact badly with this feature.  It does not.   "resubmit" only
(optionally) changes the in_port used for the resubmit's flow table lookup.
It does not otherwise have any effect on in_port.)

Bug #14091.
CC: Jarno Rajahalme <jarno.rajahalme at nsn.com>
CC: Ronghua Zhang <rzhang at nicira.com>
Signed-off-by: Ben Pfaff <blp at nicira.com>


commit 94aa0d197d3898264ed9761dd5a2089fed40fca3
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=94aa0d197d3898264ed9761dd5a2089fed40fca3
Author: Ben Pfaff <blp at nicira.com>
		
ofproto-dpif: Avoid figuring out sFlow and IPFIX actions twice.
		
Not only is it easier to re-use the actions we already have, this avoids
potential problems due to the state that add_sflow_action() and
add_ipfix_action() look at having possibly been changed by
do_xlate_actions().  Currently those functions appear to look only at
the flow's 'in_port', which currently can't change.  However, an upcoming
commit will make it possible for actions to change the flow's 'in_port',
and in addition, with this change, one doesn't have to wonder whether these
functions might look at other state that translation might change.

Signed-off-by: Ben Pfaff <blp at nicira.com>


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

Summary of changes:
 NEWS                          |    4 ++++
 include/openflow/nicira-ext.h |    2 ++
 lib/meta-flow.c               |    2 +-
 ofproto/ofproto-dpif.c        |    6 +++---
 tests/ofproto-dpif.at         |    5 +++--
 5 files changed, 13 insertions(+), 6 deletions(-)


hooks/post-receive
-- 
Open vSwitch



More information about the git mailing list