[dpdk-dev,v3] net/ixgbe: fix l3fwd start failed on VF
Checks
Commit Message
VF can't run in multi queue mode, if nb_q_per_pool was set as 1.
Nb_q_per_pool is passed through to max_rx_q and max_tx_q in VF.
So if nb_q_per_pool is equal to 1, max_rx_q and max_tx_q can't be more
than 1 and VF multi queue mode will fail.
Fixes: 27b609cbd1c6 (ethdev: move the multi-queue mode check)
Signed-off-by: Yanglong Wu <yanglong.wu@intel.com>
---
drivers/net/ixgbe/ixgbe_ethdev.c | 2 --
1 file changed, 2 deletions(-)
Comments
Hi Yanglong,
You should write something after SoB, which makes reviewer easier to know
What changes are since last version.
Thanks
Zhiyong
> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Yanglong Wu
> Sent: Monday, November 20, 2017 10:26 AM
> To: dev@dpdk.org
> Cc: Wu, Yanglong <yanglong.wu@intel.com>
> Subject: [dpdk-dev] [PATCH v3] net/ixgbe: fix l3fwd start failed on VF
>
> VF can't run in multi queue mode, if nb_q_per_pool was set as 1.
> Nb_q_per_pool is passed through to max_rx_q and max_tx_q in VF.
> So if nb_q_per_pool is equal to 1, max_rx_q and max_tx_q can't be more than 1
> and VF multi queue mode will fail.
>
> Fixes: 27b609cbd1c6 (ethdev: move the multi-queue mode check)
>
> Signed-off-by: Yanglong Wu <yanglong.wu@intel.com>
> ---
Changes in V3:
@@ -2222,8 +2222,6 @@ ixgbe_check_mq_mode(struct rte_eth_dev *dev)
case ETH_MQ_RX_NONE:
/* if nothing mq mode configure, use default scheme */
dev->data->dev_conf.rxmode.mq_mode = ETH_MQ_RX_VMDQ_ONLY;
- if (RTE_ETH_DEV_SRIOV(dev).nb_q_per_pool > 1)
- RTE_ETH_DEV_SRIOV(dev).nb_q_per_pool = 1;
break;
default: /* ETH_MQ_RX_DCB, ETH_MQ_RX_DCB_RSS or ETH_MQ_TX_DCB*/
/* SRIOV only works in VMDq enable mode */