[ovs-git] Open vSwitch: ofproto-dpif: Never wildcard dl_type for "normal" action. (branch-1.11)

dev at openvswitch.org dev at openvswitch.org
Wed Jun 12 00:38:36 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, branch-1.11 has been updated
       via  baab901089fca8135511adf9e1f2f14c55d9c946 (commit)
       via  facbc29f5b2f12c99f61316df47904f9510743f0 (commit)
       via  ebf6dced1a0fa73149664cd104729cc468602f37 (commit)
       via  4054bba5a09568bee27dc76b6f3dfd13e98b67a8 (commit)
       via  f8acf8ba7c4a46d8724d930cab436a3f12b2a1b7 (commit)
       via  0e05b480be23c283d9e4e091344b39f051814b1d (commit)
      from  22783aa1893ba99fa7fdc8936bd461f19d33447a (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 baab901089fca8135511adf9e1f2f14c55d9c946
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=baab901089fca8135511adf9e1f2f14c55d9c946
Author: Justin Pettit <jpettit at nicira.com>
		
ofproto-dpif: Never wildcard dl_type for "normal" action.
		
The is_gratuitous_arp() function is occasionally called when
processing the "normal" action.  The previous code only disabled
wildcarding the dl_type field when the function was called, but
since it runs occasionally, it could lead to inconsistencies in the
facet table.  This commit causes the dl_type to never be wildcarded
when the "normal" action is used.

Signed-off-by: Justin Pettit <jpettit at nicira.com>
Acked-by: Ethan Jackson <ethan at nicira.com>


commit facbc29f5b2f12c99f61316df47904f9510743f0
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=facbc29f5b2f12c99f61316df47904f9510743f0
Author: Justin Pettit <jpettit at nicira.com>
		
ofproto-dpif: Store relevant fields for wildcarding in facet.
		
Dynamically determines the flow fields that were relevant in
processing flows based on the OpenFlow flow table and switch
configuration.  The immediate use for this functionality is to
cache action translations for similar flows in facets.  This yields
a roughly 80% improvement in flow set up rates for a complicated
flow table.

More importantly, these wildcards will be used to determine what to
wildcard for the forthcoming kernel wildcard (megaflow) patches
that will allow wildcarding in the kernel, which will provide
significant flow set up improvements.

The approach to tracking fields and caching action translations in
facets was based on an impressive prototype by Ethan Jackson.

Co-authored-by: Ethan Jackson <ethan at nicira.com>
Signed-off-by: Ethan Jackson <ethan at nicira.com>
Signed-off-by: Justin Pettit <jpettit at nicira.com>


commit ebf6dced1a0fa73149664cd104729cc468602f37
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=ebf6dced1a0fa73149664cd104729cc468602f37
Author: Ethan Jackson <ethan at nicira.com>
		
flow: Add new wildcard functions.
		
Rename the function flow_wildcards_combine() to flow_wildcards_and().
Add new flow_wildcards_or() and flow_hash_in_wildcards() functions.
These will be useful in a future patch.

Signed-off-by: Ethan Jackson <ethan at nicira.com>
Signed-off-by: Justin Pettit <jpettit at nicira.com>


commit 4054bba5a09568bee27dc76b6f3dfd13e98b67a8
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=4054bba5a09568bee27dc76b6f3dfd13e98b67a8
Author: Ethan Jackson <ethan at nicira.com>
		
classifier: Add 'wc' argument to classifier_lookup().
		
A future commit will want to know what bits were significant during the
classifier lookup.

Signed-off-by: Ethan Jackson <ethan at nicira.com>
Co-authored-by: Justin Pettit <jpettit at nicira.com>
Signed-off-by: Justin Pettit <jpettit at nicira.com>


commit f8acf8ba7c4a46d8724d930cab436a3f12b2a1b7
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=f8acf8ba7c4a46d8724d930cab436a3f12b2a1b7
Author: Ethan Jackson <ethan at nicira.com>
		
flow: Add new flow_wildcards_fold_minimask() function.
		
This function will be useful in a future commit.

Signed-off-by: Ethan Jackson <ethan at nicira.com>
Co-authored-by: Justin Pettit <jpettit at nicira.com>
Signed-off-by: Justin Pettit <jpettit at nicira.com>


commit 0e05b480be23c283d9e4e091344b39f051814b1d
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=0e05b480be23c283d9e4e091344b39f051814b1d
Author: Ethan Jackson <ethan at nicira.com>
		
ofproto-dpif: Consolidate facet stat logic.
		
The logic for updating statistics at the facet level had been
spread through ofproto-dpif in a rather confusing manner.  This
patch consolidates as much of this logic as is reasonable into
facet_push_stats().

On a side note, I'd expect this patch to have a marginal positive
performance impact when using learning (though I haven't bothered
to measure it).  It combines facet_learn() and facet_push_stats()
into one step allowing us to avoid a redundant xlate_actions().

Signed-off-by: Ethan Jackson <ethan at nicira.com>


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

Summary of changes:
 NEWS                    |    2 +
 lib/bond.c              |   20 +-
 lib/bond.h              |    5 +-
 lib/bundle.c            |   19 +-
 lib/bundle.h            |    2 +
 lib/classifier.c        |   17 +-
 lib/classifier.h        |    3 +-
 lib/flow.c              |  117 ++++++--
 lib/flow.h              |   17 +-
 lib/learn.c             |   16 ++
 lib/learn.h             |    2 +
 lib/multipath.c         |    7 +-
 lib/multipath.h         |    4 +-
 lib/nx-match.c          |   13 +-
 lib/nx-match.h          |    6 +-
 ofproto/ofproto-dpif.c  |  675 +++++++++++++++++++++++++++++++----------------
 tests/ofproto-dpif.at   |  379 ++++++++++++++++++++++++++
 tests/test-bundle.c     |    4 +-
 tests/test-classifier.c |    4 +-
 tests/test-multipath.c  |    5 +-
 20 files changed, 1035 insertions(+), 282 deletions(-)


hooks/post-receive
-- 
Open vSwitch



More information about the git mailing list