[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