[ovs-dev] [PATCH v4 0/3] Write-Actions and Groups

Simon Horman horms at verge.net.au
Wed Oct 9 11:53:24 UTC 2013


Hi,

After a bit of a hiatus I would like to revisit this series.
I have rebased it and addressed the issues which I felt
were conclusively discussed in response to v3 of this patchset.


This series is comprised of two components.

A. Support write actions.

   With this in place it is possible to use write actions and clear actions.
   This patch does not depend on other patches in the series.

   [PATCH v4 1/3] Add support for write-actions

B. Translation of indirect and all groups

   With these patches in place it is possible to use indirect and all groups.
   These patches depend on previous patches in the series.

   [PATCH v4 2/3] ofproto-dpif: Implement group callbacks
   [PATCH v4 3/3] Translation of indirect and all groups


Changes since v3:
* Rebase
* As suggested by Jarno Rajahalme
  - Group instructions in ofpact_is_allowed_in_actions_set()
    and add comment about why they are exclude from the actions set.
  - Allow OFPACT_DEC_MPLS_TTL in action set.
  - Add note about why some non-OpenFlow actions are excluded from
    the action set
  - Stop translation of actions if looking up the
    group of a group actions fails. Previously an attempt
    was made to send a packet_in message instead.
  - Process action buckets of groups for write list as a list of actions
    rather than a set.  The action bucket should only be treated as a set if
    the group action is part of the action set
* group parameter of group_dpif_get_buckets() should not
  be const as the address of one of its fields is assigned
  to another parameter.
* Correct cloning logic in xlate_all_group().
  It is the flow that should be reset not the base_flow.


Changes since v2:
* "ovs-ofctl: Handle any number of buckets in group statistics"
  + As suggested by Ben Pfaff
    - Vastly simplify the change by using an explicit pointer for
      the 'bucket_stats' member of struct ofputil_group_stats rather
      than implicit variable length array appended to the end of the
      structure.
* "ofproto-dpif: Implement group callbacks" and
  "Translation of indirect and all groups"
  + Rebase for "ofproto-dpif: Hide struct rule_dpif internally"
  + Hide group_dpif in a similar manner to rule_dpif

Overall diffstat

 lib/ofp-actions.c            | 353 +++++++++++++++++++++++++++++++++++++++++--
 lib/ofp-actions.h            |  22 ++-
 lib/ofp-parse.c              |  43 +++++-
 ofproto/ofproto-dpif-xlate.c | 168 +++++++++++++++++++-
 ofproto/ofproto-dpif.c       | 172 ++++++++++++++++++++-
 ofproto/ofproto-dpif.h       |  10 ++
 ofproto/ofproto.c            |   2 +
 tests/ofp-actions.at         |  26 +++-
 tests/ofproto-dpif.at        |  75 +++++++++
 utilities/ovs-ofctl.8.in     |  51 +++++++
 10 files changed, 884 insertions(+), 38 deletions(-)

-- 
1.8.4




More information about the dev mailing list