On Fri, Aug 31, 2018 at 11:00:57AM +0200, Adrien Mazarguil wrote: > This is a follow up to the "Flow API helpers enhancements" series submitted > almost a year ago [1]. The new title is due to the reduced scope of this > version. > > rte_flow_conv() is a flexible replacement to rte_flow_copy(), itself a > temporary solution pending something better [2]. It replaces a lot of > duplicated code found in testpmd and removes some of the maintenance burden > that developers tend to forget (me included) when modifying pattern > items or actions (updating app/test-pmd/config.c to be clear). > > This series was unearthed in order to complete the implementation of > RTE_FLOW_ACTION_TYPE_ENCAP_(VXLAN|NVGRE) in testpmd [3] without having to > duplicate existing code once again. > > See individual patches for specific changes in this version. > > v3 changes: > > - Marked rte_flow_conv() as experimental, modified net/bonding accordingly. > - Fixed compilation issue on ARM. > - Removed deprecation notice. > > v2 changes: > > - rte_flow_copy() is kept, albeit deprecated, no API/ABI impact. > - Updated bonding PMD. > - No more automatic generation of rte_flow_conv.h. > > [1] https://mails.dpdk.org/archives/dev/2017-October/077551.html > [2] https://mails.dpdk.org/archives/dev/2017-July/070492.html > [3] Currently the command-line parser (cmdline_flow.c) is aware of these > actions, however config.c isn't. Flow rules with such actions cannot > be created and cannot be validated with PMDs that implement them. > > Adrien Mazarguil (7): > ethdev: add flow API object converter > ethdev: add flow API item/action name conversion > app/testpmd: rely on flow API conversion function > net/failsafe: switch to flow API object conversion function > net/bonding: switch to flow API object conversion function > ethdev: add missing items/actions to flow object converter > ethdev: deprecate rte_flow_copy function > > app/test-pmd/config.c | 407 +++------------ > app/test-pmd/testpmd.h | 7 +- > doc/guides/prog_guide/rte_flow.rst | 20 + > doc/guides/rel_notes/deprecation.rst | 7 - > drivers/net/bonding/Makefile | 1 + > drivers/net/bonding/meson.build | 1 + > drivers/net/bonding/rte_eth_bond_api.c | 6 +- > drivers/net/bonding/rte_eth_bond_flow.c | 31 +- > drivers/net/bonding/rte_eth_bond_private.h | 5 +- > drivers/net/failsafe/failsafe_ether.c | 6 +- > drivers/net/failsafe/failsafe_flow.c | 31 +- > drivers/net/failsafe/failsafe_private.h | 5 +- > lib/librte_ethdev/rte_ethdev_version.map | 1 + > lib/librte_ethdev/rte_flow.c | 666 ++++++++++++++++++------ > lib/librte_ethdev/rte_flow.h | 231 +++++++- > 15 files changed, 886 insertions(+), 539 deletions(-) > > -- > 2.11.0
Acked-by: Nelio Laranjeiro <nelio.laranje...@6wind.com> -- Nélio Laranjeiro 6WIND