From: Beilei Xing <beilei.x...@intel.com> Currently, if launch testpmd with multiple queues and re-configure rxq with 'port config all rxq 1', Rx queue 0 may not receive packets. that's because RSS lookup tale is not re-configured when Rxq number is 1. Although Rxq number is 1 and multi queue mode is RTE_ETH_MQ_RX_NONE, cpfl PMD should init RSS to allow RSS re-configuration.
Fixes: cfbc66551a14 ("net/cpfl: support RSS") Signed-off-by: Beilei Xing <beilei.x...@intel.com> --- drivers/net/cpfl/cpfl_ethdev.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/drivers/net/cpfl/cpfl_ethdev.c b/drivers/net/cpfl/cpfl_ethdev.c index e96bf0a82e..9755ffe508 100644 --- a/drivers/net/cpfl/cpfl_ethdev.c +++ b/drivers/net/cpfl/cpfl_ethdev.c @@ -712,17 +712,15 @@ cpfl_dev_configure(struct rte_eth_dev *dev) return -EINVAL; } - if (base->caps.rss_caps != 0 && dev->data->nb_rx_queues != 0 && - conf->rxmode.mq_mode == RTE_ETH_MQ_RX_RSS) { + if (base->caps.rss_caps != 0 && dev->data->nb_rx_queues != 0) { ret = cpfl_init_rss(vport); if (ret != 0) { PMD_INIT_LOG(ERR, "Failed to init rss"); return ret; } - } else { + } else if (conf->rxmode.mq_mode == RTE_ETH_MQ_RX_RSS) { PMD_INIT_LOG(ERR, "RSS is not supported."); - if (conf->rxmode.mq_mode == RTE_ETH_MQ_RX_RSS) - return -ENOTSUP; + return -ENOTSUP; } vport->max_pkt_len = -- 2.34.1