The patch set supports flow director on fortville. It includes: - set up/tear down fortville resources to support flow director, such as queue and vsi. - support operation to add or delete 8 flow types of the flow director filters, they are ipv4, tcpv4, udpv4, sctpv4, ipv6, tcpv6, udpv6, sctpv6. - support flushing flow director table (all filters). - support operation to get flow director information. - match status statistics, FD_ID report. - support operation to configure flexible payload and its mask - support flexible payload involved in comparison and flex bytes report.
v2 changes: - create real fdir vsi and assign queue 0 pair to it. - check filter status report on the rx queue 0 v3 changes: - redefine filter APIs to support multi-kind filters - support sctpv4 and sctpv6 type flows - support flexible payload involved in comparison v4 changes: - strip the filter APIs definitions from this patch set - extend mbuf field to support flex bytes report - fix typos v5 changes: - redefine structure rte_eth_fdir_info - add doxygen comments about flexible payload and mbuf extend - fix typos Jingjing Wu (21): i40e: set up and initialize flow director i40e: tear down flow director i40e: initialize flexible payload setting ethdev: define structures for adding/deleting flow director i40e: implement operations to add/delete flow director testpmd: add test commands to add/delete flow director filter i40e: match counter for flow director mbuf: extend fdir field i40e: report flow director match info to mbuf testpmd: print extended fdir info in mbuf ethdev: define structures for getting flow director information i40e: implement operations to get fdir info testpmd: display fdir statistics i40e: implement operation to flush flow director table testpmd: add test command to flush flow director table ethdev: define structures for configuring flexible payload i40e: implement operations to configure flexible payload testpmd: add test command to configure flexible payload ethdev: define structures for configuring flex masks i40e: implement operations to configure flexible masks testpmd: add test command to configure flexible masks app/test-pmd/cmdline.c | 813 ++++++++++++++++++++++++ app/test-pmd/config.c | 42 +- app/test-pmd/rxonly.c | 14 +- lib/librte_ether/rte_eth_ctrl.h | 261 ++++++++ lib/librte_mbuf/rte_mbuf.h | 14 +- lib/librte_pmd_i40e/Makefile | 2 + lib/librte_pmd_i40e/i40e_ethdev.c | 128 +++- lib/librte_pmd_i40e/i40e_ethdev.h | 35 +- lib/librte_pmd_i40e/i40e_fdir.c | 1221 +++++++++++++++++++++++++++++++++++++ lib/librte_pmd_i40e/i40e_rxtx.c | 226 ++++++- 10 files changed, 2728 insertions(+), 28 deletions(-) create mode 100644 lib/librte_pmd_i40e/i40e_fdir.c -- 1.8.1.4