From 5205c436a33e060d06f7f230e051b94be31d6d91 Mon Sep 17 00:00:00 2001 From: Ivan Malov Date: Thu, 11 Oct 2018 15:49:30 +0100 Subject: [PATCH] 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 Signed-off-by: Andrew Rybchenko --- drivers/net/sfc/sfc_rx.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/sfc/sfc_rx.c b/drivers/net/sfc/sfc_rx.c index 000cd0b203..553576485e 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: