net/netvsc: do not configure RSS if disabled
authorStephen Hemminger <stephen@networkplumber.org>
Thu, 30 Apr 2020 19:08:53 +0000 (12:08 -0700)
committerFerruh Yigit <ferruh.yigit@intel.com>
Mon, 11 May 2020 20:27:39 +0000 (22:27 +0200)
This fixes the problem where driver would not start if only
have a single Rx queue and multiple Txq. In that case, RSS
should stay disabled.

Fixes: 92d23a57cafe ("net/netvsc: support configuring RSS parameters")
Cc: stable@dpdk.org
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
drivers/net/netvsc/hn_ethdev.c

index 6010236..55b8a63 100644 (file)
@@ -376,14 +376,15 @@ static int hn_rss_hash_update(struct rte_eth_dev *dev,
 
        hn_rss_hash_init(hv, rss_conf);
 
-       err = hn_rndis_conf_rss(hv, 0);
-       if (err) {
-               PMD_DRV_LOG(NOTICE,
-                           "rss reconfig failed (RSS disabled)");
-               return err;
+       if (rss_conf->rss_hf != 0) {
+               err = hn_rndis_conf_rss(hv, 0);
+               if (err) {
+                       PMD_DRV_LOG(NOTICE,
+                                   "rss reconfig failed (RSS disabled)");
+                       return err;
+               }
        }
 
-
        return hn_vf_rss_hash_update(dev, rss_conf);
 }
 
@@ -595,11 +596,13 @@ static int hn_dev_configure(struct rte_eth_dev *dev)
                        return err;
                }
 
-               err = hn_rndis_conf_rss(hv, 0);
-               if (err) {
-                       PMD_DRV_LOG(NOTICE,
-                                   "initial RSS config failed");
-                       return err;
+               if (rss_conf->rss_hf != 0) {
+                       err = hn_rndis_conf_rss(hv, 0);
+                       if (err) {
+                               PMD_DRV_LOG(NOTICE,
+                                           "initial RSS config failed");
+                               return err;
+                       }
                }
        }