This series refactors how information about fields is managed at compile
time, making it more flexible via a new "extract-ofp-fields" program.  It
uses that flexibility to centralize all knowledge of how OXM and NXM works
in nx-match (from being split across nx-match, meta-flow, ofp-util, and
elsewhere).  Then it takes advantage to implement OF1.5 (draft) Set-Field
(EXT-314), experimenter OXM, and the OF1.5 (draft) actset_output field.

The final patch is not ready for full review.  I believe that the rest of
the series is.

v1->v2: Applied and dropped several patches.  Applied comments to a few
  patches, and fixed a few test failures that somehow I missed in v1.
  Please see individual patches for detailed changes.

Ben Pfaff (12):
  meta-flow: Autogenerate mf_field data structures.
  util: New function bitwise_scan().
  ovs-ofctl: Encode cookies in OXM-compliant manner.
  nx-match: Move all knowledge of OXM/NXM here.
  ofp-actions: Better support OXM in Copy-Field action.
  ofp-actions: Support OF1.5 (draft) masked Set-Field, merge with
    reg_load.
  nx-match: Use nx_put_header() internally for encoding flow matches.
  nx-match: Speak of 'class' instead of 'vendor' for OXM/NXM.
  util: Make hexits_value() support 64-bit integers too.
  nx-match: Add support for experimenter OXM.
  ofp-actions: Support experimenter OXMs in Nicira extensions.
  [RFC] flow: Support OF1.5+ (draft) actset_output field.

 NEWS                            |    1 +
 build-aux/extract-ofp-fields    |  500 +++++++++++++
 include/openflow/nicira-ext.h   |  496 +------------
 include/openflow/openflow-1.0.h |    7 +-
 include/openflow/openflow-1.2.h |  139 ----
 lib/automake.mk                 |   11 +-
 lib/bundle.c                    |    5 +
 lib/flow.c                      |   10 +-
 lib/flow.h                      |   10 +-
 lib/json.c                      |    5 +-
 lib/learn.c                     |   30 +-
 lib/match.c                     |   15 +-
 lib/match.h                     |    1 +
 lib/meta-flow.c                 | 1038 ++-------------------------
 lib/meta-flow.h                 | 1464 +++++++++++++++++++++++++++++++++++----
 lib/multipath.c                 |    4 +
 lib/nx-match.c                  | 1379 ++++++++++++++++++++++++------------
 lib/nx-match.h                  |   46 +-
 lib/odp-util.h                  |    2 +-
 lib/ofp-actions.c               |  693 ++++++++++++------
 lib/ofp-actions.h               |   16 +-
 lib/ofp-parse.c                 |    1 +
 lib/ofp-util.c                  |  107 +--
 lib/util.c                      |   49 +-
 lib/util.h                      |    4 +-
 ofproto/ofproto-dpif-xlate.c    |   26 +-
 ofproto/ofproto.c               |   20 +-
 tests/dpif-netdev.at            |    2 +-
 tests/ofp-actions.at            |   34 +-
 tests/ofp-print.at              |   14 +
 tests/ofproto-dpif.at           |    4 +-
 tests/ofproto.at                |    3 +-
 tests/ovs-ofctl.at              |  109 ++-
 utilities/ovs-ofctl.8.in        |   39 +-
 utilities/ovs-ofctl.c           |    5 +
 vswitchd/bridge.c               |    1 +
 36 files changed, 3663 insertions(+), 2627 deletions(-)
 create mode 100755 build-aux/extract-ofp-fields

-- 
1.7.10.4

_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to