> From: Wu, Jingjing > Sent: Friday, November 21, 2014 12:47 AM > To: dev at dpdk.org > Cc: Wu, Jingjing; Cao, Min; Ananyev, Konstantin > Subject: [PATCH v6 00/22] Support flow director programming on Fortville > > 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 > > v6 changes: > - extend structure rte_eth_fdir_info > - move the flex payload and mask setting from filter_ctrl api > to i40e_fdir_configure when start device > - change the structure for flex payload and mask setting, and > add verification of those arguments before HW setting is taken. > - change flexpayloads from words to bytes format > - add two more flow_types > - organize duplicate code lines to macro or function > - add and correct doxygen comments > - fix the merging error in v5 > > Jingjing Wu (22): > 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: define functions for transition between flow_type and pctype > 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 > i40e: implement operation to flush flow director table > testpmd: add test command to flush flow director table > ethdev: define structures for getting flow director information > i40e: implement operations to get fdir info > ethdev: define structures for getting flow director statistics > i40e: implement operations to get fdir statistics > testpmd: display fdir info > ethdev: add flexible payload setting in eth_conf > i40e: take flow director flexible payload configuration > testpmd: add test command to configure flexible mask > testpmd: add test command to configure flexible payload > > app/test-pmd/cmdline.c | 644 ++++++++++++++++++ > app/test-pmd/config.c | 202 +++++- > app/test-pmd/rxonly.c | 14 +- > app/test-pmd/testpmd.h | 5 +- > lib/librte_ether/rte_eth_ctrl.h | 279 +++++++- > lib/librte_ether/rte_ethdev.h | 11 +- > lib/librte_mbuf/rte_mbuf.h | 17 +- > lib/librte_pmd_i40e/Makefile | 2 + > lib/librte_pmd_i40e/i40e_ethdev.c | 175 ++++- > lib/librte_pmd_i40e/i40e_ethdev.h | 93 ++- > lib/librte_pmd_i40e/i40e_fdir.c | 1362 > +++++++++++++++++++++++++++++++++++++ > lib/librte_pmd_i40e/i40e_rxtx.c | 207 +++++- > 12 files changed, 2965 insertions(+), 46 deletions(-) > create mode 100644 lib/librte_pmd_i40e/i40e_fdir.c > > -- > 1.8.1.4
Acked-by: Konstantin Ananyev <konstantin.ananyev at intel.com>