From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 85C11A0C45 for ; Thu, 10 Jun 2021 14:07:48 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 81C0F410F9; Thu, 10 Jun 2021 14:07:48 +0200 (CEST) Received: from youngberry.canonical.com (youngberry.canonical.com [91.189.89.112]) by mails.dpdk.org (Postfix) with ESMTP id 85AFE40F35 for ; Thu, 10 Jun 2021 14:07:47 +0200 (CEST) Received: from 2.general.paelzer.uk.vpn ([10.172.196.173] helo=localhost.localdomain) by youngberry.canonical.com with esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.93) (envelope-from ) id 1lrJTN-00008r-FB; Thu, 10 Jun 2021 12:07:45 +0000 From: Christian Ehrhardt To: Chengwen Feng Cc: Viacheslav Ovsiienko , dpdk stable Date: Thu, 10 Jun 2021 14:06:17 +0200 Message-Id: <20210610120641.885862-29-christian.ehrhardt@canonical.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210610120641.885862-1-christian.ehrhardt@canonical.com> References: <20210610120641.885862-1-christian.ehrhardt@canonical.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-stable] patch 'net/mlx5: fix secondary process initialization ordering' has been queued to stable release 19.11.9 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Sender: "stable" 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/d176e9e77d81e8d51482e825c603ffe356099d8c Thanks. Christian Ehrhardt --- >From d176e9e77d81e8d51482e825c603ffe356099d8c Mon Sep 17 00:00:00 2001 From: Chengwen Feng Date: Mon, 10 May 2021 20:06:03 +0800 Subject: [PATCH] net/mlx5: fix secondary process initialization ordering [ upstream commit 69b44d6bce1c9990e522a08f693d5f9f2e2e5067 ] 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: 2aac5b5d119f ("net/mlx5: sync stop/start with secondary process") Signed-off-by: Chengwen Feng Acked-by: Viacheslav Ovsiienko --- drivers/net/mlx5/mlx5_mp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/mlx5/mlx5_mp.c b/drivers/net/mlx5/mlx5_mp.c index e889247871..6b7f5f3dcb 100644 --- a/drivers/net/mlx5/mlx5_mp.c +++ b/drivers/net/mlx5/mlx5_mp.c @@ -134,7 +134,6 @@ mp_secondary_handle(const struct rte_mp_msg *mp_msg, const void *peer) switch (param->type) { case MLX5_MP_REQ_START_RXTX: DRV_LOG(INFO, "port %u starting datapath", dev->data->port_id); - rte_mb(); dev->rx_pkt_burst = mlx5_select_rx_function(dev); dev->tx_pkt_burst = mlx5_select_tx_function(dev); ppriv = (struct mlx5_proc_priv *)dev->process_private; @@ -151,6 +150,7 @@ mp_secondary_handle(const struct rte_mp_msg *mp_msg, const void *peer) return -rte_errno; } } + 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.463663215 +0200 +++ 0029-net-mlx5-fix-secondary-process-initialization-orderi.patch 2021-06-10 14:04:58.058024583 +0200 @@ -1 +1 @@ -From 69b44d6bce1c9990e522a08f693d5f9f2e2e5067 Mon Sep 17 00:00:00 2001 +From d176e9e77d81e8d51482e825c603ffe356099d8c Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit 69b44d6bce1c9990e522a08f693d5f9f2e2e5067 ] + @@ -11 +12,0 @@ -Cc: stable@dpdk.org @@ -16 +17 @@ - drivers/net/mlx5/linux/mlx5_mp_os.c | 2 +- + drivers/net/mlx5/mlx5_mp.c | 2 +- @@ -19,5 +20,5 @@ -diff --git a/drivers/net/mlx5/linux/mlx5_mp_os.c b/drivers/net/mlx5/linux/mlx5_mp_os.c -index ca529b6007..3a4aa766f8 100644 ---- a/drivers/net/mlx5/linux/mlx5_mp_os.c -+++ b/drivers/net/mlx5/linux/mlx5_mp_os.c -@@ -132,7 +132,6 @@ struct rte_mp_msg mp_res; +diff --git a/drivers/net/mlx5/mlx5_mp.c b/drivers/net/mlx5/mlx5_mp.c +index e889247871..6b7f5f3dcb 100644 +--- a/drivers/net/mlx5/mlx5_mp.c ++++ b/drivers/net/mlx5/mlx5_mp.c +@@ -134,7 +134,6 @@ mp_secondary_handle(const struct rte_mp_msg *mp_msg, const void *peer) @@ -31 +32 @@ -@@ -149,6 +148,7 @@ struct rte_mp_msg mp_res; +@@ -151,6 +150,7 @@ mp_secondary_handle(const struct rte_mp_msg *mp_msg, const void *peer) @@ -36 +37 @@ - mp_init_msg(&priv->mp_id, &mp_res, param->type); + mp_init_msg(dev, &mp_res, param->type);