patch 'net/hns3: fix pseudo-sharing between threads' has been queued to stable release 21.11.2

Kevin Traynor ktraynor at redhat.com
Wed May 25 18:28:13 CEST 2022


Hi,

FYI, your patch has been queued to stable release 21.11.2

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

Thanks.

Kevin

---
>From 74089f471acd86f4267ed66e15a567feaf5f6576 Mon Sep 17 00:00:00 2001
From: Huisong Li <lihuisong at huawei.com>
Date: Thu, 5 May 2022 20:27:03 +0800
Subject: [PATCH] net/hns3: fix pseudo-sharing between threads

[ upstream commit ec0147b5690e6cae2cc4555f78b87defee59c946 ]

Some fields in the end of 'struct hns3_rx_queue' and
'struct hns3_tx_queue' are not accessed in the I/O path.
But these fields may be accessed in other threads, which may lead to the
problem of cache pseudo-sharing of IO threads. This patch add a
cacheline alignment to avoid it.

Fixes: 9261fd3caf1f ("net/hns3: improve IO path data cache usage")

Signed-off-by: Huisong Li <lihuisong at huawei.com>
Signed-off-by: Min Hu (Connor) <humin29 at huawei.com>
---
 drivers/net/hns3/hns3_rxtx.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/hns3/hns3_rxtx.h b/drivers/net/hns3/hns3_rxtx.h
index e202eb9c30..0e412d07b3 100644
--- a/drivers/net/hns3/hns3_rxtx.h
+++ b/drivers/net/hns3/hns3_rxtx.h
@@ -350,5 +350,5 @@ struct hns3_rx_queue {
 	 * placed at the end.
 	 */
-	void *io_base;
+	void *io_base __rte_cache_aligned;
 	struct hns3_adapter *hns;
 	uint64_t rx_ring_phys_addr; /* RX ring DMA address */
@@ -524,5 +524,5 @@ struct hns3_tx_queue {
 	 * placed at the end.
 	 */
-	void *io_base;
+	void *io_base __rte_cache_aligned;
 	struct hns3_adapter *hns;
 	uint64_t tx_ring_phys_addr; /* TX ring DMA address */
-- 
2.34.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2022-05-25 17:26:59.099646534 +0100
+++ 0021-net-hns3-fix-pseudo-sharing-between-threads.patch	2022-05-25 17:26:58.569828334 +0100
@@ -1 +1 @@
-From ec0147b5690e6cae2cc4555f78b87defee59c946 Mon Sep 17 00:00:00 2001
+From 74089f471acd86f4267ed66e15a567feaf5f6576 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit ec0147b5690e6cae2cc4555f78b87defee59c946 ]
+
@@ -13 +14,0 @@
-Cc: stable at dpdk.org
@@ -22 +23 @@
-index a000318357..62efc854e4 100644
+index e202eb9c30..0e412d07b3 100644
@@ -25 +26 @@
-@@ -349,5 +349,5 @@ struct hns3_rx_queue {
+@@ -350,5 +350,5 @@ struct hns3_rx_queue {
@@ -32 +33 @@
-@@ -522,5 +522,5 @@ struct hns3_tx_queue {
+@@ -524,5 +524,5 @@ struct hns3_tx_queue {



More information about the stable mailing list