There was a plan to have structures from lib/net/ at the beginning of corresponding flow item structures. Unfortunately this plan has not been followed up so far. This series is a step to make the most used items, compliant with the inheritance design explained above. The old API is kept in anonymous union for compatibility, but the code in drivers and apps is updated to use the new API.
Thomas Monjalon (8): ethdev: use Ethernet protocol struct for flow matching net: add smaller fields for VXLAN ethdev: use VXLAN protocol struct for flow matching ethdev: use GRE protocol struct for flow matching ethdev: use GTP protocol struct for flow matching ethdev: use ARP protocol struct for flow matching doc: fix description of L2TPV2 flow item net: mark all big endian types app/test-flow-perf/actions_gen.c | 2 +- app/test-flow-perf/items_gen.c | 24 +-- app/test-pmd/cmdline_flow.c | 172 ++++++++++---------- doc/guides/prog_guide/rte_flow.rst | 57 ++----- doc/guides/rel_notes/deprecation.rst | 34 +++- drivers/net/bnxt/bnxt_flow.c | 54 ++++--- drivers/net/bnxt/tf_ulp/ulp_rte_parser.c | 112 +++++++------ drivers/net/bonding/rte_eth_bond_pmd.c | 12 +- drivers/net/cxgbe/cxgbe_flow.c | 44 ++--- drivers/net/dpaa2/dpaa2_flow.c | 60 +++---- drivers/net/dpaa2/dpaa2_mux.c | 2 +- drivers/net/e1000/igb_flow.c | 14 +- drivers/net/enic/enic_flow.c | 24 +-- drivers/net/enic/enic_fm_flow.c | 16 +- drivers/net/hinic/hinic_pmd_flow.c | 14 +- drivers/net/hns3/hns3_flow.c | 40 ++--- drivers/net/i40e/i40e_fdir.c | 14 +- drivers/net/i40e/i40e_flow.c | 124 +++++++-------- drivers/net/i40e/i40e_hash.c | 4 +- drivers/net/iavf/iavf_fdir.c | 18 +-- drivers/net/iavf/iavf_fsub.c | 10 +- drivers/net/iavf/iavf_ipsec_crypto.c | 4 +- drivers/net/ice/ice_acl_filter.c | 20 +-- drivers/net/ice/ice_fdir_filter.c | 24 +-- drivers/net/ice/ice_switch_filter.c | 64 ++++---- drivers/net/igc/igc_flow.c | 8 +- drivers/net/ipn3ke/ipn3ke_flow.c | 12 +- drivers/net/ixgbe/ixgbe_flow.c | 58 +++---- drivers/net/mlx4/mlx4_flow.c | 38 ++--- drivers/net/mlx5/mlx5_flow.c | 62 ++++---- drivers/net/mlx5/mlx5_flow_dv.c | 194 ++++++++++++----------- drivers/net/mlx5/mlx5_flow_verbs.c | 46 +++--- drivers/net/mlx5/mlx5_trigger.c | 28 ++-- drivers/net/mvpp2/mrvl_flow.c | 28 ++-- drivers/net/sfc/sfc_flow.c | 52 +++--- drivers/net/sfc/sfc_mae.c | 46 +++--- drivers/net/tap/tap_flow.c | 58 +++---- drivers/net/txgbe/txgbe_flow.c | 28 ++-- lib/ethdev/rte_flow.h | 117 +++++++++----- lib/net/rte_arp.h | 28 ++-- lib/net/rte_higig.h | 6 +- lib/net/rte_mpls.h | 2 +- lib/net/rte_vxlan.h | 35 +++- 43 files changed, 926 insertions(+), 883 deletions(-) -- 2.36.1