[v5,07/40] net/bonding: check RSS hash algorithms

Message ID 20231011092805.693171-8-haijie1@huawei.com (mailing list archive)
State Changes Requested, archived
Delegated to: Ferruh Yigit
Headers
Series support setting and querying RSS algorithms |

Checks

Context Check Description
ci/checkpatch success coding style OK

Commit Message

Jie Hai Oct. 11, 2023, 9:27 a.m. UTC
  A new field 'algorithm' has been added to rss_conf, check it
in case of ignoring unsupported values.

Signed-off-by: Jie Hai <haijie1@huawei.com>
---
 drivers/net/bonding/rte_eth_bond_pmd.c | 6 ++++++
 1 file changed, 6 insertions(+)
  

Patch

diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c b/drivers/net/bonding/rte_eth_bond_pmd.c
index 122b1187fd9c..75ad0270af03 100644
--- a/drivers/net/bonding/rte_eth_bond_pmd.c
+++ b/drivers/net/bonding/rte_eth_bond_pmd.c
@@ -3187,6 +3187,9 @@  bond_ethdev_rss_hash_update(struct rte_eth_dev *dev,
 	if (bond_rss_conf.rss_hf != 0)
 		dev->data->dev_conf.rx_adv_conf.rss_conf.rss_hf = bond_rss_conf.rss_hf;
 
+	if (bond_rss_conf.algorithm != RTE_ETH_HASH_FUNCTION_DEFAULT)
+		return -EINVAL;
+
 	if (bond_rss_conf.rss_key) {
 		if (bond_rss_conf.rss_key_len < internals->rss_key_len)
 			return -EINVAL;
@@ -3915,6 +3918,9 @@  bond_ethdev_configure(struct rte_eth_dev *dev)
 		struct rte_eth_rss_conf *rss_conf =
 			&dev->data->dev_conf.rx_adv_conf.rss_conf;
 
+		if (rss_conf->algorithm != RTE_ETH_HASH_FUNCTION_DEFAULT)
+			return -EINVAL;
+
 		if (internals->rss_key_len == 0) {
 			internals->rss_key_len = sizeof(default_rss_key);
 		}