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 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev