[dpdk-stable] patch 'net/mlx4: fix secondary process initialization ordering' has been queued to stable release 19.11.9

Christian Ehrhardt christian.ehrhardt at canonical.com
Thu Jun 10 14:06:16 CEST 2021


Hi,

FYI, your patch has been queued to stable release 19.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 06/12/21. 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/8b700cbb8c888f2fd17c8ce1ef86134a143ae5a1

Thanks.

Christian Ehrhardt <christian.ehrhardt at canonical.com>

---
>From 8b700cbb8c888f2fd17c8ce1ef86134a143ae5a1 Mon Sep 17 00:00:00 2001
From: Chengwen Feng <fengchengwen at huawei.com>
Date: Mon, 10 May 2021 20:06:02 +0800
Subject: [PATCH] net/mlx4: fix secondary process initialization ordering

[ upstream commit e5d94cf94e9d7c240e73b390c8c292fc9595f971 ]

The memory barrier is used to ensure that the response is returned
only after the Tx/Rx function is set, it should place after the Rx/Tx
function is set.

Fixes: 0203d33a1059 ("net/mlx4: support secondary process")

Signed-off-by: Chengwen Feng <fengchengwen at huawei.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo at nvidia.com>
---
 drivers/net/mlx4/mlx4_mp.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/mlx4/mlx4_mp.c b/drivers/net/mlx4/mlx4_mp.c
index 4da743d9e3..1e9b4de500 100644
--- a/drivers/net/mlx4/mlx4_mp.c
+++ b/drivers/net/mlx4/mlx4_mp.c
@@ -127,7 +127,6 @@ mp_secondary_handle(const struct rte_mp_msg *mp_msg, const void *peer)
 	switch (param->type) {
 	case MLX4_MP_REQ_START_RXTX:
 		INFO("port %u starting datapath", dev->data->port_id);
-		rte_mb();
 		dev->tx_pkt_burst = mlx4_tx_burst;
 		dev->rx_pkt_burst = mlx4_rx_burst;
 #ifdef HAVE_IBV_MLX4_UAR_MMAP_OFFSET
@@ -145,6 +144,7 @@ mp_secondary_handle(const struct rte_mp_msg *mp_msg, const void *peer)
 			}
 		}
 #endif
+		rte_mb();
 		mp_init_msg(dev, &mp_res, param->type);
 		res->result = 0;
 		ret = rte_mp_reply(&mp_res, peer);
-- 
2.31.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2021-06-10 14:04:59.410480383 +0200
+++ 0028-net-mlx4-fix-secondary-process-initialization-orderi.patch	2021-06-10 14:04:58.058024583 +0200
@@ -1 +1 @@
-From e5d94cf94e9d7c240e73b390c8c292fc9595f971 Mon Sep 17 00:00:00 2001
+From 8b700cbb8c888f2fd17c8ce1ef86134a143ae5a1 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit e5d94cf94e9d7c240e73b390c8c292fc9595f971 ]
+
@@ -11 +12,0 @@
-Cc: stable at dpdk.org
@@ -20 +21 @@
-index ddf7bdb9ef..8fcfb5490e 100644
+index 4da743d9e3..1e9b4de500 100644
@@ -23 +24 @@
-@@ -126,7 +126,6 @@ mp_secondary_handle(const struct rte_mp_msg *mp_msg, const void *peer)
+@@ -127,7 +127,6 @@ mp_secondary_handle(const struct rte_mp_msg *mp_msg, const void *peer)
@@ -31 +32 @@
-@@ -144,6 +143,7 @@ mp_secondary_handle(const struct rte_mp_msg *mp_msg, const void *peer)
+@@ -145,6 +144,7 @@ mp_secondary_handle(const struct rte_mp_msg *mp_msg, const void *peer)


More information about the stable mailing list