On 10/11/2023 10:27 AM, Jie Hai wrote: > This patchset is to support setting and querying RSS algorithms. > > -- > v5: > 1. rewrite some comments. > 2. check RSS algorithm for drivers supporting RSS. > 3. change field "func" of rss_conf to "algorithm". > 4. fix commit log for [PATCH v4 4/7]. > 5. add Acked-by Reshma Pattan. > 6. add symmetric_toeplitz_sort for showing. > 7. change "hf" to "hash function" for showing. > > v4: > 1. recomment some definitions related to RSS. > 2. allocate static memory for rss_key instead of dynamic. > 3. use array of strings to get the name of rss algorithm. > 4. add display of rss algorithm with testpmd. > > v3: > 1. fix commit log for PATCH [1/5]. > 2. make RSS ABI changes description to start the actual text at the margin. > 3. move defnition of enum rte_eth_hash_function to rte_ethdev.h. > 4. fix some comment codes. > > v2: > 1. return error if "func" is invalid. > 2. modify the comments of the "func" field. > 3. modify commit log of patch [3/5]. > 4. use malloc instead of rte_malloc. > 5. adjust display format of RSS info. > 6. remove the string display of rss_hf. > > Huisong Li (1): > net/hns3: support setting and querying RSS hash function > > Jie Hai (39): > ethdev: overwrite some comment related to RSS > ethdev: support setting and querying RSS algorithm > net/atlantic: check RSS hash algorithms > net/axgbe: check RSS hash algorithms > net/bnx2x: check RSS hash algorithms > net/bnxt: check RSS hash algorithms > net/bonding: check RSS hash algorithms > net/cnxk: check RSS hash algorithms > net/cpfl: check RSS hash algorithms > net/cxgbe: check RSS hash algorithms > net/dpaa: check RSS hash algorithms > net/dpaa2: check RSS hash algorithms > net/ena: check RSS hash algorithms > net/enic: check RSS hash algorithms > net/fm10k: check RSS hash algorithms > net/hinic: check RSS hash algorithms > net/i40e: check RSS hash algorithms > net/iavf: check RSS hash algorithms > net/ice: check RSS hash algorithms > net/idpf: check RSS hash algorithms > net/igc: check RSS hash algorithms > net/ionic: check RSS hash algorithms > net/ixgbe: check RSS hash algorithms > net/mana: check RSS hash algorithms > net/mlx5: check RSS hash algorithms > net/mvpp2: check RSS hash algorithms > net/netvsc: check RSS hash algorithms > net/ngbe: : check RSS hash algorithms > net/nfp: check RSS hash algorithms > net/null: check RSS hash algorithms > net/qede: check RSS hash algorithms > net/sfc: check RSS hash algorithms > net/tap: check RSS hash algorithms > net/thunderx: check RSS hash algorithms > net/txgbe: check RSS hash algorithms > app/proc-info: fix never show RSS info > app/proc-info: adjust the display format of RSS info > app/proc-info: support querying RSS hash algorithm > app/testpmd: add RSS hash algorithms display > > app/proc-info/main.c | 32 ++++++++++----- > app/test-pmd/cmdline.c | 29 ++++++++++--- > app/test-pmd/config.c | 38 ++++++++--------- > app/test-pmd/testpmd.h | 2 +- > doc/guides/rel_notes/release_23_11.rst | 2 + > drivers/net/atlantic/atl_ethdev.c | 2 + > drivers/net/axgbe/axgbe_ethdev.c | 9 +++++ > drivers/net/bnx2x/bnx2x_ethdev.c | 4 ++ > drivers/net/bnxt/bnxt_ethdev.c | 6 +++ > drivers/net/bonding/rte_eth_bond_pmd.c | 6 +++ > drivers/net/cnxk/cnxk_ethdev.c | 5 +++ > drivers/net/cnxk/cnxk_ethdev_ops.c | 3 ++ > drivers/net/cpfl/cpfl_ethdev.c | 6 +++ > drivers/net/cxgbe/cxgbe_ethdev.c | 9 ++++- > drivers/net/dpaa/dpaa_ethdev.c | 7 ++++ > drivers/net/dpaa2/dpaa2_ethdev.c | 7 ++++ > drivers/net/ena/ena_rss.c | 3 ++ > drivers/net/enic/enic_ethdev.c | 1 + > drivers/net/enic/enic_main.c | 3 ++ > drivers/net/fm10k/fm10k_ethdev.c | 9 ++++- > drivers/net/hinic/hinic_pmd_ethdev.c | 3 ++ > drivers/net/hinic/hinic_pmd_rx.c | 3 ++ > drivers/net/hns3/hns3_rss.c | 47 ++++++++++++--------- > drivers/net/i40e/i40e_ethdev.c | 7 ++++ > drivers/net/iavf/iavf_ethdev.c | 6 +++ > drivers/net/ice/ice_dcf.c | 3 ++ > drivers/net/ice/ice_dcf_ethdev.c | 3 ++ > drivers/net/ice/ice_ethdev.c | 7 ++++ > drivers/net/idpf/idpf_ethdev.c | 6 +++ > drivers/net/igc/igc_ethdev.c | 4 ++ > drivers/net/igc/igc_txrx.c | 5 +++ > drivers/net/ionic/ionic_ethdev.c | 6 +++ > drivers/net/ixgbe/ixgbe_ethdev.c | 12 +++++- > drivers/net/ixgbe/ixgbe_rxtx.c | 4 ++ > drivers/net/mana/mana.c | 11 ++++- > drivers/net/mlx5/mlx5_ethdev.c | 4 ++ > drivers/net/mlx5/mlx5_rss.c | 3 +- > drivers/net/mvpp2/mrvl_ethdev.c | 3 ++ > drivers/net/netvsc/hn_ethdev.c | 6 +++ > drivers/net/nfp/nfp_common.c | 9 ++++- > drivers/net/ngbe/ngbe_ethdev.c | 6 ++- > drivers/net/ngbe/ngbe_rxtx.c | 3 ++ > drivers/net/null/rte_eth_null.c | 8 ++++ > drivers/net/qede/qede_ethdev.c | 9 ++++- > drivers/net/sfc/sfc_ethdev.c | 3 ++ > drivers/net/sfc/sfc_rx.c | 3 ++ > drivers/net/tap/rte_eth_tap.c | 8 ++++ > drivers/net/thunderx/nicvf_ethdev.c | 10 ++++- > drivers/net/txgbe/txgbe_ethdev.c | 7 +++- > drivers/net/txgbe/txgbe_ethdev_vf.c | 7 +++- > drivers/net/txgbe/txgbe_rxtx.c | 3 ++ > lib/ethdev/rte_ethdev.c | 17 ++++++++ > lib/ethdev/rte_ethdev.h | 56 +++++++++++++++++++------- > lib/ethdev/rte_flow.c | 1 - > lib/ethdev/rte_flow.h | 25 +----------- > 55 files changed, 395 insertions(+), 106 deletions(-) >
Can update following drivers too: - igb (drivers/net/e1000/igb_ethdev.c) - octeontx, configure(), as it checks RSS mode there - virtio - vmxnet3, as it configures RSS Thanks, ferruh