From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Monjalon Subject: Re: [PATCH v9 0/5] Support configuring hash functions Date: Mon, 02 Feb 2015 16:15:16 +0100 Message-ID: <2785158.c7tQmRvz8F@xps13> References: <1417486760-24459-1-git-send-email-helin.zhang@intel.com> <1421912219-1946-1-git-send-email-helin.zhang@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7Bit Cc: dev-VfR2kkLFssw@public.gmane.org To: Helin Zhang Return-path: In-Reply-To: <1421912219-1946-1-git-send-email-helin.zhang-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces-VfR2kkLFssw@public.gmane.org Sender: "dev" > These patches mainly support configuring hash functions. In detail, > - It can get/set global hash configurations. > * Get/set symmetric hash enable per flow type. > * Get/set hash function type. > - It can get/set symmetric hash enable per port. > - Four commands have been implemented in testpmd to support testing above. > * get_sym_hash_ena_per_port > * set_sym_hash_ena_per_port > * get_hash_global_config > * set_hash_global_config > > It also uses constant hash keys to replace runtime generating hash keys. > Global initialization is added to correctly put registers to an initial state. > > 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. > > v4 changes: > * Fixed a bug in testpmd to support 'set_sym_hash_ena_per_port'. > > v5 changes: > * Integrated with filter API defined recently. > * Remove all for filter API definition, as it has already defined and merged > recently. > > v6 changes: > * Flow type strings are used to replace Packet Classification Types, to isolate > hardware specific things. > * Implemented the mapping function to convert RSS offload types to Packet > Classification Types, to isolate the real hardware specific things. > * Removed initialization of global registers in i40e PMD, as global registers > shouldn't be initialized per port. > * Added more annotations to get code more understandable. > * Corrected annotation format for documenation. > > v7 changes: > * Removed swap configurations, as it is not allowed by hardware design. > * Put symmetric hash per flow type and hash function type into > 'RTE_ETH_HASH_FILTER_GLOBAL_CONFIG', as they are controlling global registers > which will affects all the ports of the same NIC. > > v8 changes: > * Removed redundant checks in i40e_ethdev.c. > * Solved compile errors on ICC. > > v9 changes: > * Added typo fixes in rte_eth_ctrl.h. > * Splitted modifications in both rte_eth_ctrl.h and i40e, one patch is for ethdev, > the other one is for i40e. > > Helin Zhang (5): > i40e: use constant as the default hash keys > ethdev: code style fixes > ethdev: support of configuring hash functions > i40e: support of controlling hash functions > app/testpmd: add commands to support hash functions Applied Thanks -- Thomas