[dpdk-dev] [PATCH v3 0/7] Support configuring hash functions

Helin Zhang helin.zhang at intel.com
Tue Sep 30 08:20:21 CEST 2014


These patches mainly support configuring hash functions.
In detail,
 - It can get or set hash functions.
 - It can configure symmetric hash functions.
   * Get/set symmetric hash enable per port.
   * Get/set symmetric hash enable per 'PCTYPE'.
   * Get/set filter swap configurations.
 - 'ethdev' level interfaces are added.
   * 'rte_eth_dev_filter_supported', to check if a filter control
     is supported on a port.
   * 'rte_eth_dev_filter_ctrl', a common API to execute
     specific filter control.
 - Six commands have been implemented in testpmd to support
   testing above.
   * get_sym_hash_ena_per_port
   * set_sym_hash_ena_per_port
   * get_sym_hash_ena_per_pctype
   * set_sym_hash_ena_per_pctype
   * get_filter_swap
   * set_filter_swap
   * get_hash_function
   * set_hash_function

Note that 'PCTYPE' means 'Packet Classification Type'.

v3 changes:
* Removed renamings in rte_ethdev.h.
* Redesigned filter control API and its relevant structures/enums.
* Renamed header file from rte_eth_features.h to rte_eth_ctrol.h.
* Remove public header file of rte_i40e.h specific for i40e.
* Added hardware initialization function during port init.
* Used constant random hash keys in i40e PF.
* renamed the commands in testpmd based on the redesigned filter control API.

Helin Zhang (7):
  ethdev: add more annotations
  ethdev: add interfaces and relevant for filter control
  ethdev: add structures and enum for hash filter control
  i40e: add hash filter control implementation
  i40e: add hardware initialization
  i40e: Use constant random hash keys
  app/testpmd: add commands to support hash filter control

 app/test-pmd/cmdline.c            | 565 ++++++++++++++++++++++++++++++++++++++
 lib/librte_ether/Makefile         |   1 +
 lib/librte_ether/rte_eth_ctrl.h   | 154 +++++++++++
 lib/librte_ether/rte_ethdev.c     |  32 +++
 lib/librte_ether/rte_ethdev.h     |  53 +++-
 lib/librte_pmd_i40e/i40e_ethdev.c | 492 ++++++++++++++++++++++++++++++++-
 6 files changed, 1290 insertions(+), 7 deletions(-)
 create mode 100644 lib/librte_ether/rte_eth_ctrl.h

-- 
1.8.1.4



More information about the dev mailing list