[dpdk-stable] patch 'net/bonding: use evenly distributed default RSS RETA' has been queued to LTS release 16.11.9

Luca Boccassi bluca at debian.org
Thu Sep 27 10:44:01 CEST 2018


Hi,

FYI, your patch has been queued to LTS release 16.11.9

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 09/27/18. So please
shout if anyone has objections.

Also note that after the patch there's a diff of the upstream commit vs the patch applied
to the branch. If the code is different (ie: not only metadata diffs), due for example to
a change in context or macro names, please double check it.

Thanks.

Luca Boccassi

---
>From 79e22e7318fa1f79655765796140261dcfaefa55 Mon Sep 17 00:00:00 2001
From: Igor Romanov <igor.romanov at oktetlabs.ru>
Date: Wed, 29 Aug 2018 08:48:30 +0100
Subject: [PATCH] net/bonding: use evenly distributed default RSS RETA

[ upstream commit 617d1ac2fd22e9a82d305c0607853f4ee0f7277b ]

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")

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 60f9e1ab11..1fe0c179a1 100644
--- a/drivers/net/bonding/rte_eth_bond_pmd.c
+++ b/drivers/net/bonding/rte_eth_bond_pmd.c
@@ -2381,7 +2381,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.18.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2018-09-25 13:26:56.906789299 +0100
+++ 0006-net-bonding-use-evenly-distributed-default-RSS-RETA.patch	2018-09-25 13:26:56.779424704 +0100
@@ -1,8 +1,10 @@
-From 617d1ac2fd22e9a82d305c0607853f4ee0f7277b Mon Sep 17 00:00:00 2001
+From 79e22e7318fa1f79655765796140261dcfaefa55 Mon Sep 17 00:00:00 2001
 From: Igor Romanov <igor.romanov at oktetlabs.ru>
 Date: Wed, 29 Aug 2018 08:48:30 +0100
 Subject: [PATCH] net/bonding: use evenly distributed default RSS RETA
 
+[ upstream commit 617d1ac2fd22e9a82d305c0607853f4ee0f7277b ]
+
 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
@@ -14,7 +16,6 @@
 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>
@@ -24,10 +25,10 @@
  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 b84f322630..0f5ab09e38 100644
+index 60f9e1ab11..1fe0c179a1 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)
+@@ -2381,7 +2381,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++)


More information about the stable mailing list