From 440f7e8f67673b8482d1b8e779ea93603f37c21f Mon Sep 17 00:00:00 2001 From: Huisong Li Date: Wed, 8 Jun 2022 19:45:47 +0800 Subject: [PATCH 107/122] net/bonding: fix RSS inconsistent between bonded and slaves Currently, RSS configuration of slave is set only when RSS is enabled for bonded port. If RSS is enabled for the slaves port before adding to the bonded port with disabling RSS, it will run into that the RSS enabled state of bonded and slaves port is inconsistent after starting bonded port. So the RSS configuration of slave should also be set when RSS is disabled for bonded port. Fixes: 734ce47f71e0 ("bonding: support RSS dynamic configuration") Cc: stable@dpdk.org Signed-off-by: Huisong Li Signed-off-by: Dongdong Liu Reviewed-by: Andrew Rybchenko --- drivers/net/bonding/rte_eth_bond_pmd.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c b/drivers/net/bonding/rte_eth_bond_pmd.c index 0d6f0a30d1..09636321cd 100644 --- a/drivers/net/bonding/rte_eth_bond_pmd.c +++ b/drivers/net/bonding/rte_eth_bond_pmd.c @@ -1711,6 +1711,12 @@ slave_configure(struct rte_eth_dev *bonded_eth_dev, bonded_eth_dev->data->dev_conf.rx_adv_conf.rss_conf.rss_hf; slave_eth_dev->data->dev_conf.rxmode.mq_mode = bonded_eth_dev->data->dev_conf.rxmode.mq_mode; + } else { + slave_eth_dev->data->dev_conf.rx_adv_conf.rss_conf.rss_key_len = 0; + slave_eth_dev->data->dev_conf.rx_adv_conf.rss_conf.rss_key = NULL; + slave_eth_dev->data->dev_conf.rx_adv_conf.rss_conf.rss_hf = 0; + slave_eth_dev->data->dev_conf.rxmode.mq_mode = + bonded_eth_dev->data->dev_conf.rxmode.mq_mode; } slave_eth_dev->data->dev_conf.rxmode.mtu = -- 2.22.0