summaryrefslogtreecommitdiff
path: root/drivers/net/sfc/sfc_rx.c
diff options
context:
space:
mode:
authorIvan Malov <ivan.malov@oktetlabs.ru>2018-10-11 15:49:30 +0100
committerFerruh Yigit <ferruh.yigit@intel.com>2018-10-11 19:34:29 +0200
commit5205c436a33e060d06f7f230e051b94be31d6d91 (patch)
tree93d3b6be548a934e86392c9bde72fa5b628471b2 /drivers/net/sfc/sfc_rx.c
parent45e4cf1939106f4894d9025c7c4e1bef7f66749d (diff)
downloaddpdk-5205c436a33e060d06f7f230e051b94be31d6d91.zip
dpdk-5205c436a33e060d06f7f230e051b94be31d6d91.tar.gz
dpdk-5205c436a33e060d06f7f230e051b94be31d6d91.tar.xz
net/sfc: do not skip RSS configuration step on reconfigure
Earlier a patch was made to support change of Rx queue number. That patch added goto label in wrong place because reconfiguration with the same number of queues results in skipping not only queue init but also RSS settings. If a user configures device with RSS multiqueue mode and then wants to stop it and reconfigure without RSS, this change will be ignored and RSS will continue working. Move the label in the right place and rename it to describe it. Fixes: 55a539003f1a ("net/sfc: support changing the number of receive queues") Cc: stable@dpdk.org Signed-off-by: Ivan Malov <ivan.malov@oktetlabs.ru> Signed-off-by: Andrew Rybchenko <arybchenko@solarflare.com>
Diffstat (limited to 'drivers/net/sfc/sfc_rx.c')
-rw-r--r--drivers/net/sfc/sfc_rx.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/sfc/sfc_rx.c b/drivers/net/sfc/sfc_rx.c
index 000cd0b..5535764 100644
--- a/drivers/net/sfc/sfc_rx.c
+++ b/drivers/net/sfc/sfc_rx.c
@@ -1504,7 +1504,7 @@ sfc_rx_configure(struct sfc_adapter *sa)
goto fail_check_mode;
if (nb_rx_queues == sa->rxq_count)
- goto done;
+ goto configure_rss;
if (sa->rxq_info == NULL) {
rc = ENOMEM;
@@ -1541,6 +1541,7 @@ sfc_rx_configure(struct sfc_adapter *sa)
sa->rxq_count++;
}
+configure_rss:
rss->channels = (dev_conf->rxmode.mq_mode == ETH_MQ_RX_RSS) ?
MIN(sa->rxq_count, EFX_MAXRSS) : 0;
@@ -1557,7 +1558,6 @@ sfc_rx_configure(struct sfc_adapter *sa)
goto fail_rx_process_adv_conf_rss;
}
-done:
return 0;
fail_rx_process_adv_conf_rss: