[dpdk-dev] [PATCH] net/bonding: use evenly distributed default RSS RETA

Chas Williams 3chas3 at gmail.com
Tue Sep 4 15:29:47 CEST 2018


On Wed, Aug 29, 2018 at 3:48 AM Andrew Rybchenko <arybchenko at solarflare.com>
wrote:

> From: Igor Romanov <igor.romanov at oktetlabs.ru>
>
> Default Redirection Table that is set in bonding driver is distributed
> evenly over all Rx queues only within every RETA group (the first RETA
> entries in every group are always start with zero). But in the most
> drivers, default RETA is distributed over all Rx queues without sequence
> resets in the beginning of a new group, which implies more balanced
> per-core load.
>
> Change the default RETA to be evenly distributed over all Rx queues
> considering the whole table.
>
> Fixes: 734ce47f71e0 ("bonding: support RSS dynamic configuration")
> Cc: stable at dpdk.org
>
> Signed-off-by: Igor Romanov <igor.romanov at oktetlabs.ru>
> Signed-off-by: Andrew Rybchenko <arybchenko at solarflare.com>
>

Acked-by: Chas Williams <chas3 at att.com>



> ---
>  drivers/net/bonding/rte_eth_bond_pmd.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c
> b/drivers/net/bonding/rte_eth_bond_pmd.c
> index b84f32263..0f5ab09e3 100644
> --- a/drivers/net/bonding/rte_eth_bond_pmd.c
> +++ b/drivers/net/bonding/rte_eth_bond_pmd.c
> @@ -3293,7 +3293,9 @@ bond_ethdev_configure(struct rte_eth_dev *dev)
>                 for (i = 0; i < RTE_DIM(internals->reta_conf); i++) {
>                         internals->reta_conf[i].mask = ~0LL;
>                         for (j = 0; j < RTE_RETA_GROUP_SIZE; j++)
> -                               internals->reta_conf[i].reta[j] = j %
> dev->data->nb_rx_queues;
> +                               internals->reta_conf[i].reta[j] =
> +                                               (i * RTE_RETA_GROUP_SIZE +
> j) %
> +                                               dev->data->nb_rx_queues;
>                 }
>         }
>
> --
> 2.17.1
>
>


More information about the dev mailing list