patch 'net/bonding: fix offloading configuration' has been queued to stable release 21.11.1

Kevin Traynor ktraynor at redhat.com
Mon Feb 21 16:34:16 CET 2022


Hi,

FYI, your patch has been queued to stable release 21.11.1

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 02/26/22. 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. This will indicate if there was any rebasing
needed to apply to the stable branch. If there were code changes for rebasing
(ie: not only metadata diffs), please double check that the rebase was
correctly done.

Queued patches are on a temporary branch at:
https://github.com/kevintraynor/dpdk-stable

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable/commit/96b92d045ff682f181844c2e3fc877e9729f159e

Thanks.

Kevin

---
>From 96b92d045ff682f181844c2e3fc877e9729f159e Mon Sep 17 00:00:00 2001
From: Chengchang Tang <tangchengchang at huawei.com>
Date: Tue, 9 Nov 2021 15:57:26 +0800
Subject: [PATCH] net/bonding: fix offloading configuration

[ upstream commit 57b156540f51a89214098e594494023e3820fa4f ]

Currently, part offloadings of the bonding device will not take effect
by using dev_configure(). Because the related configuration will not be
delivered to the slave devices in this way.

The offloading capability of the bonding device is the intersection of
the capability of all slave devices. Based on this, the following
functions are added to the bonding driver:
1. If a Tx offloading is within the capability of the bonding device
   (i.e, all the slave devices support this Tx offloading), the enabling
   status of the offloading of all slave devices depends on the
   configuration of the bonding device.

2. For the Tx offloading that is not within the Tx offloading capability
   of the bonding device, the enabling status of the offloading on the
   slave devices is irrelevant to the bonding device configuration. And
   it depends on the original configuration of the slave devices.

Fixes: e8b3e1a9b1bb ("net/bonding: switch to new offloading API")

Signed-off-by: Chengchang Tang <tangchengchang at huawei.com>
Signed-off-by: Min Hu (Connor) <humin29 at huawei.com>
---
 drivers/net/bonding/rte_eth_bond_pmd.c | 23 +++++++++++++++--------
 1 file changed, 15 insertions(+), 8 deletions(-)

diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c b/drivers/net/bonding/rte_eth_bond_pmd.c
index 84f4900ee5..0f11a2f5a8 100644
--- a/drivers/net/bonding/rte_eth_bond_pmd.c
+++ b/drivers/net/bonding/rte_eth_bond_pmd.c
@@ -1714,15 +1714,22 @@ slave_configure(struct rte_eth_dev *bonded_eth_dev,
 	}
 
-	if (bonded_eth_dev->data->dev_conf.rxmode.offloads &
-			RTE_ETH_RX_OFFLOAD_VLAN_FILTER)
-		slave_eth_dev->data->dev_conf.rxmode.offloads |=
-				RTE_ETH_RX_OFFLOAD_VLAN_FILTER;
-	else
-		slave_eth_dev->data->dev_conf.rxmode.offloads &=
-				~RTE_ETH_RX_OFFLOAD_VLAN_FILTER;
-
 	slave_eth_dev->data->dev_conf.rxmode.mtu =
 			bonded_eth_dev->data->dev_conf.rxmode.mtu;
 
+	slave_eth_dev->data->dev_conf.txmode.offloads |=
+		bonded_eth_dev->data->dev_conf.txmode.offloads;
+
+	slave_eth_dev->data->dev_conf.txmode.offloads &=
+		(bonded_eth_dev->data->dev_conf.txmode.offloads |
+		~internals->tx_offload_capa);
+
+	slave_eth_dev->data->dev_conf.rxmode.offloads |=
+		bonded_eth_dev->data->dev_conf.rxmode.offloads;
+
+	slave_eth_dev->data->dev_conf.rxmode.offloads &=
+		(bonded_eth_dev->data->dev_conf.rxmode.offloads |
+		~internals->rx_offload_capa);
+
+
 	nb_rx_queues = bonded_eth_dev->data->nb_rx_queues;
 	nb_tx_queues = bonded_eth_dev->data->nb_tx_queues;
-- 
2.34.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2022-02-21 15:22:46.107080438 +0000
+++ 0067-net-bonding-fix-offloading-configuration.patch	2022-02-21 15:22:44.147704252 +0000
@@ -1 +1 @@
-From 57b156540f51a89214098e594494023e3820fa4f Mon Sep 17 00:00:00 2001
+From 96b92d045ff682f181844c2e3fc877e9729f159e Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 57b156540f51a89214098e594494023e3820fa4f ]
+
@@ -24 +25,0 @@
-Cc: stable at dpdk.org



More information about the stable mailing list