patches for DPDK stable branches
 help / color / mirror / Atom feed
* patch 'net/bonding: set initial value of descriptor count alignment' has been queued to stable release 19.11.14
@ 2022-11-16 10:39 christian.ehrhardt
  2022-11-16 10:39 ` patch 'net/bonding: fix dropping valid MAC packets' " christian.ehrhardt
                   ` (15 more replies)
  0 siblings, 16 replies; 17+ messages in thread
From: christian.ehrhardt @ 2022-11-16 10:39 UTC (permalink / raw)
  To: Ivan Malov; +Cc: Andrew Rybchenko, Min Hu, Weiyuan Li, dpdk stable

Hi,

FYI, your patch has been queued to stable release 19.11.14

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 11/23/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/cpaelzer/dpdk-stable-queue

This queued commit can be viewed at:
https://github.com/cpaelzer/dpdk-stable-queue/commit/011fd38782d66715153eb1e6220b6597aa79254e

Thanks.

Christian Ehrhardt <christian.ehrhardt@canonical.com>

---
From 011fd38782d66715153eb1e6220b6597aa79254e Mon Sep 17 00:00:00 2001
From: Ivan Malov <ivan.malov@oktetlabs.ru>
Date: Mon, 31 Oct 2022 16:17:44 +0300
Subject: [PATCH] net/bonding: set initial value of descriptor count alignment

[ upstream commit 550e8d6d340f93882e4a1183314fd5f4a408595f ]

The driver had once been broken by patch [1] looking to have
a non-zero "nb_max" value in a use case not involving adding
any back-end ports. That was addressed afterwards ([2]). But,
as per report [3], similar test cases exist which attempt to
setup Rx queues on a void bond before attaching any back-end
ports. Rx queue setup, in turn, involves device info get API
invocation, and one of the checks on received data causes an
exception (division by zero). The "nb_align" value is indeed
zero at that time, but, as explained in [2], such test cases
are totally incorrect since a bond device must have at least
one back-end port plugged before any ethdev APIs can be used.

Once again, to avoid any problems with fixing the test cases,
this patch adjusts the bond PMD itself to workaround the bug.

[1] commit 5be3b40fea60 ("net/bonding: fix values of descriptor limits")
[2] commit d03c0e83cc00 ("net/bonding: fix descriptor limit reporting")
[3] https://bugs.dpdk.org/show_bug.cgi?id=1118

Bugzilla ID: 1118
Fixes: d03c0e83cc00 ("net/bonding: fix descriptor limit reporting")

Signed-off-by: Ivan Malov <ivan.malov@oktetlabs.ru>
Reviewed-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
Acked-by: Min Hu (Connor) <humin29@huawei.com>
Tested-by: Weiyuan Li <weiyuanx.li@intel.com>
---
 drivers/net/bonding/rte_eth_bond_pmd.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c b/drivers/net/bonding/rte_eth_bond_pmd.c
index 7e79bac42e..c555d4640e 100644
--- a/drivers/net/bonding/rte_eth_bond_pmd.c
+++ b/drivers/net/bonding/rte_eth_bond_pmd.c
@@ -3332,6 +3332,8 @@ bond_alloc(struct rte_vdev_device *dev, uint8_t mode)
 	 */
 	internals->rx_desc_lim.nb_max = UINT16_MAX;
 	internals->tx_desc_lim.nb_max = UINT16_MAX;
+	internals->rx_desc_lim.nb_align = 1;
+	internals->tx_desc_lim.nb_align = 1;
 
 	memset(internals->active_slaves, 0, sizeof(internals->active_slaves));
 	memset(internals->slaves, 0, sizeof(internals->slaves));
-- 
2.38.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2022-11-16 11:36:50.479327603 +0100
+++ 0001-net-bonding-set-initial-value-of-descriptor-count-al.patch	2022-11-16 11:36:50.388775301 +0100
@@ -1 +1 @@
-From 550e8d6d340f93882e4a1183314fd5f4a408595f Mon Sep 17 00:00:00 2001
+From 011fd38782d66715153eb1e6220b6597aa79254e Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 550e8d6d340f93882e4a1183314fd5f4a408595f ]
+
@@ -27 +28,0 @@
-Cc: stable@dpdk.org
@@ -38 +39 @@
-index bd25040851..e0da1fa7c9 100644
+index 7e79bac42e..c555d4640e 100644
@@ -41 +42 @@
-@@ -3431,6 +3431,8 @@ bond_alloc(struct rte_vdev_device *dev, uint8_t mode)
+@@ -3332,6 +3332,8 @@ bond_alloc(struct rte_vdev_device *dev, uint8_t mode)

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2022-11-16 10:41 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-16 10:39 patch 'net/bonding: set initial value of descriptor count alignment' has been queued to stable release 19.11.14 christian.ehrhardt
2022-11-16 10:39 ` patch 'net/bonding: fix dropping valid MAC packets' " christian.ehrhardt
2022-11-16 10:39 ` patch 'app/testpmd: make quit flag volatile' " christian.ehrhardt
2022-11-16 10:39 ` patch 'net/bonding: fix mbuf fast free handling' " christian.ehrhardt
2022-11-16 10:40 ` patch 'eal: fix doxygen comments for UUID' " christian.ehrhardt
2022-11-16 10:40 ` patch 'power: fix some doxygen comments' " christian.ehrhardt
2022-11-16 10:40 ` patch 'test/hash: remove dead code in extendable bucket test' " christian.ehrhardt
2022-11-16 10:40 ` patch 'net/mlx5: fix hairpin split with set VLAN VID action' " christian.ehrhardt
2022-11-16 10:40 ` patch 'net/ice/base: fix duplicate flow rules' " christian.ehrhardt
2022-11-16 10:40 ` patch 'net/ice: fix scalar Rx path segment' " christian.ehrhardt
2022-11-16 10:40 ` patch 'net/ice: fix scalar Tx " christian.ehrhardt
2022-11-16 10:40 ` patch 'examples/fips_validation: fix typo in error log' " christian.ehrhardt
2022-11-16 10:40 ` patch 'test/crypto: fix bitwise operator in a SNOW3G case' " christian.ehrhardt
2022-11-16 10:40 ` patch 'doc: fix typo depreciated instead of deprecated' " christian.ehrhardt
2022-11-16 10:40 ` patch 'drivers: fix typos found by Lintian' " christian.ehrhardt
2022-11-16 10:40 ` patch 'doc: fix net drivers ordering' " christian.ehrhardt
2022-11-16 10:40 ` patch 'ring: remove leftover comment about watermark' " christian.ehrhardt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).