iavf: enable symmetric-xor RSS for Toeplitz hash function
authorAhmed Zaki <ahmed.zaki@intel.com>
Wed, 13 Dec 2023 00:33:21 +0000 (17:33 -0700)
committerJakub Kicinski <kuba@kernel.org>
Thu, 14 Dec 2023 06:07:17 +0000 (22:07 -0800)
commit4a3de3fb0eb6897488dd510006abd9673f1fb34c
tree251e28d838a8e2f53931ecfa3a3384b50c53e308
parent352e9bf238133882dfaebc0dc59a590732a92006
iavf: enable symmetric-xor RSS for Toeplitz hash function

Allow the user to set the symmetric Toeplitz hash function via:

    # ethtool -X eth0 hfunc toeplitz symmetric-xor

The driver will reject any new RSS configuration if a field other than
(IP src/dst and L4 src/dst ports) is requested for hashing.

The symmetric RSS will not be supported on PFs not advertising the ADV RSS
Offload flag (ADV_RSS_SUPPORT()), for example the E700 series (i40e).

Reviewed-by: Madhu Chittim <madhu.chittim@intel.com>
Signed-off-by: Ahmed Zaki <ahmed.zaki@intel.com>
Link: https://lore.kernel.org/r/20231213003321.605376-9-ahmed.zaki@intel.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/intel/iavf/iavf.h
drivers/net/ethernet/intel/iavf/iavf_adv_rss.c
drivers/net/ethernet/intel/iavf/iavf_adv_rss.h
drivers/net/ethernet/intel/iavf/iavf_ethtool.c
drivers/net/ethernet/intel/iavf/iavf_main.c
drivers/net/ethernet/intel/iavf/iavf_virtchnl.c
drivers/net/ethernet/intel/ice/ice_virtchnl.c
drivers/net/ethernet/intel/ice/ice_virtchnl.h
drivers/net/ethernet/intel/ice/ice_virtchnl_allowlist.c
include/linux/avf/virtchnl.h