[dpdk-dev] [PATCH 1/2] igb/ixgbe: ETH_MQ_RX_NONE should disable RSS

Prashant Upadhyaya prashant.upadhyaya at aricent.com
Wed Nov 20 11:06:57 CET 2013


Hi,

So if I have multiple queues and was using ETH_MQ_RX_NONE (and therefore utilizing RSS), it will stop working for me now after this patch ?

Regards
-Prashant


-----Original Message-----
From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Ivan Boule
Sent: Wednesday, November 20, 2013 3:20 PM
To: Maxime Leroy
Cc: dev at dpdk.org
Subject: Re: [dpdk-dev] [PATCH 1/2] igb/ixgbe: ETH_MQ_RX_NONE should disable RSS

On 11/19/2013 02:03 PM, Maxime Leroy wrote:
> As explained in rte_ethdev.h, ETH_MQ_RX_NONE allows to not choose
> between RSS, DCB or VMDQ modes for the selection of a rx queue.
>
> But the igb/ixgbe code always silently selects the RSS mode with
> ETH_MQ_RX_NONE. This patch fixes this incoherence between the API and
> the implementation.
>
> Signed-off-by: Maxime Leroy <maxime.leroy at 6wind.com>
> ---
>   lib/librte_pmd_e1000/igb_rxtx.c   |    4 ++--
>   lib/librte_pmd_ixgbe/ixgbe_rxtx.c |    4 ++--
>   2 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/lib/librte_pmd_e1000/igb_rxtx.c
> b/lib/librte_pmd_e1000/igb_rxtx.c index f785d9f..641ceea 100644
> --- a/lib/librte_pmd_e1000/igb_rxtx.c
> +++ b/lib/librte_pmd_e1000/igb_rxtx.c
> @@ -1745,8 +1745,6 @@ igb_dev_mq_rx_configure(struct rte_eth_dev *dev)
>            */
>           if (dev->data->nb_rx_queues > 1)
>               switch (dev->data->dev_conf.rxmode.mq_mode) {
> -            case ETH_MQ_RX_NONE:
> -                /* if mq_mode not assign, we use rss mode.*/
>               case ETH_MQ_RX_RSS:
>                   igb_rss_configure(dev);
>                   break;
> @@ -1754,6 +1752,8 @@ igb_dev_mq_rx_configure(struct rte_eth_dev *dev)
>                   /*Configure general VMDQ only RX parameters*/
>                   igb_vmdq_rx_hw_configure(dev);
>                   break;
> +            case ETH_MQ_RX_NONE:
> +                /* if mq_mode is none, disable rss mode.*/
>               default:
>                   igb_rss_disable(dev);
>                   break;
> diff --git a/lib/librte_pmd_ixgbe/ixgbe_rxtx.c
> b/lib/librte_pmd_ixgbe/ixgbe_rxtx.c
> index 0f7be95..e1b90f9 100644
> --- a/lib/librte_pmd_ixgbe/ixgbe_rxtx.c
> +++ b/lib/librte_pmd_ixgbe/ixgbe_rxtx.c
> @@ -3217,8 +3217,6 @@ ixgbe_dev_mq_rx_configure(struct rte_eth_dev *dev)
>            */
>           if (dev->data->nb_rx_queues > 1)
>               switch (dev->data->dev_conf.rxmode.mq_mode) {
> -            case ETH_MQ_RX_NONE:
> -                /* if mq_mode not assign, we use rss mode.*/
>               case ETH_MQ_RX_RSS:
>                   ixgbe_rss_configure(dev);
>                   break;
> @@ -3231,6 +3229,8 @@ ixgbe_dev_mq_rx_configure(struct rte_eth_dev *dev)
>                   ixgbe_vmdq_rx_hw_configure(dev);
>                   break;
>
> +            case ETH_MQ_RX_NONE:
> +                /* if mq_mode is none, disable rss mode.*/
>               default: ixgbe_rss_disable(dev);
>               }
>           else

Acked by Ivan Boule <ivan.boule at 6wind.com>

--
Ivan Boule
6WIND Development Engineer





===============================================================================
Please refer to http://www.aricent.com/legal/email_disclaimer.html
for important disclosures regarding this electronic communication.
===============================================================================


More information about the dev mailing list