From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <stable-bounces@dpdk.org>
Received: from dpdk.org (dpdk.org [92.243.14.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 4F8F4A046B
	for <public@inbox.dpdk.org>; Fri, 23 Aug 2019 11:44:17 +0200 (CEST)
Received: from [92.243.14.124] (localhost [127.0.0.1])
	by dpdk.org (Postfix) with ESMTP id 467461BF9B;
	Fri, 23 Aug 2019 11:44:17 +0200 (CEST)
Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28])
 by dpdk.org (Postfix) with ESMTP id A14FE1BFA6
 for <stable@dpdk.org>; Fri, 23 Aug 2019 11:44:15 +0200 (CEST)
Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com
 [10.5.11.16])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by mx1.redhat.com (Postfix) with ESMTPS id 1CA7C30A56B0;
 Fri, 23 Aug 2019 09:44:15 +0000 (UTC)
Received: from rh.redhat.com (ovpn-116-48.ams2.redhat.com [10.36.116.48])
 by smtp.corp.redhat.com (Postfix) with ESMTP id 9DF965F9D3;
 Fri, 23 Aug 2019 09:44:13 +0000 (UTC)
From: Kevin Traynor <ktraynor@redhat.com>
To: Dharmik Thakkar <dharmik.thakkar@arm.com>
Cc: Ruifeng Wang <ruifeng.wang@arm.com>,
 David Marchand <david.marchand@redhat.com>,
 Yipeng Wang <yipeng1.wang@intel.com>, dpdk stable <stable@dpdk.org>
Date: Fri, 23 Aug 2019 10:42:59 +0100
Message-Id: <20190823094336.12078-9-ktraynor@redhat.com>
In-Reply-To: <20190823094336.12078-1-ktraynor@redhat.com>
References: <20190823094336.12078-1-ktraynor@redhat.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16
X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16
 (mx1.redhat.com [10.5.110.47]); Fri, 23 Aug 2019 09:44:15 +0000 (UTC)
Subject: [dpdk-stable] patch 'test/hash: rectify slave id to point to valid
	cores' has been queued to LTS release 18.11.3
X-BeenThere: stable@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: patches for DPDK stable branches <stable.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/stable>,
 <mailto:stable-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/stable/>
List-Post: <mailto:stable@dpdk.org>
List-Help: <mailto:stable-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/stable>,
 <mailto:stable-request@dpdk.org?subject=subscribe>
Errors-To: stable-bounces@dpdk.org
Sender: "stable" <stable-bounces@dpdk.org>

Hi,

FYI, your patch has been queued to LTS release 18.11.3

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

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable-queue/commit/692fdd5ac23bf0b19ccf62e86c90c169516dc23a

Thanks.

Kevin Traynor

---
>From 692fdd5ac23bf0b19ccf62e86c90c169516dc23a Mon Sep 17 00:00:00 2001
From: Dharmik Thakkar <dharmik.thakkar@arm.com>
Date: Sat, 15 Jun 2019 08:42:20 +0200
Subject: [PATCH] test/hash: rectify slave id to point to valid cores

[ upstream commit 477cafea6532881477da3676579ec3ca236ce47f ]

This patch rectifies slave_id to point to valid core indexes rather than
core ranks in read-write lock-free concurrency test.

It also replaces a 'for' loop with RTE_LCORE_FOREACH API.

Fixes: c7eb0972e74b ("test/hash: add lock-free r/w concurrency")

Signed-off-by: Dharmik Thakkar <dharmik.thakkar@arm.com>
Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Yipeng Wang <yipeng1.wang@intel.com>
---
 test/test/test_hash_readwrite_lf.c | 22 ++++++++++------------
 1 file changed, 10 insertions(+), 12 deletions(-)

diff --git a/test/test/test_hash_readwrite_lf.c b/test/test/test_hash_readwrite_lf.c
index f0fc63b9f..b0f415b0a 100644
--- a/test/test/test_hash_readwrite_lf.c
+++ b/test/test/test_hash_readwrite_lf.c
@@ -87,9 +87,7 @@ get_enabled_cores_list(void)
 	uint16_t core_id;
 	uint32_t max_cores = rte_lcore_count();
-	for (core_id = 0; core_id < RTE_MAX_LCORE && i < max_cores; core_id++) {
-		if (rte_lcore_is_enabled(core_id)) {
-			enabled_core_ids[i] = core_id;
-			i++;
-		}
+	RTE_LCORE_FOREACH(core_id) {
+		enabled_core_ids[i] = core_id;
+		i++;
 	}
 
@@ -620,5 +618,5 @@ test_hash_add_no_ks_lookup_hit(struct rwc_perf *rwc_perf_results, int rwc_lf,
 
 			for (i = 1; i <= rwc_core_cnt[n]; i++)
-				if (rte_eal_wait_lcore(i) < 0)
+				if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0)
 					goto err;
 
@@ -692,5 +690,5 @@ test_hash_add_no_ks_lookup_miss(struct rwc_perf *rwc_perf_results, int rwc_lf,
 				goto err;
 			for (i = 1; i <= rwc_core_cnt[n]; i++)
-				if (rte_eal_wait_lcore(i) < 0)
+				if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0)
 					goto err;
 
@@ -768,5 +766,5 @@ test_hash_add_ks_lookup_hit_non_sp(struct rwc_perf *rwc_perf_results,
 				goto err;
 			for (i = 1; i <= rwc_core_cnt[n]; i++)
-				if (rte_eal_wait_lcore(i) < 0)
+				if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0)
 					goto err;
 
@@ -844,5 +842,5 @@ test_hash_add_ks_lookup_hit_sp(struct rwc_perf *rwc_perf_results, int rwc_lf,
 				goto err;
 			for (i = 1; i <= rwc_core_cnt[n]; i++)
-				if (rte_eal_wait_lcore(i) < 0)
+				if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0)
 					goto err;
 
@@ -919,5 +917,5 @@ test_hash_add_ks_lookup_miss(struct rwc_perf *rwc_perf_results, int rwc_lf, int
 				goto err;
 			for (i = 1; i <= rwc_core_cnt[n]; i++)
-				if (rte_eal_wait_lcore(i) < 0)
+				if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0)
 					goto err;
 
@@ -1014,10 +1012,10 @@ test_hash_multi_add_lookup(struct rwc_perf *rwc_perf_results, int rwc_lf,
 				     i <= rwc_core_cnt[m] + rwc_core_cnt[n];
 				     i++)
-					rte_eal_wait_lcore(i);
+					rte_eal_wait_lcore(enabled_core_ids[i]);
 
 				writer_done = 1;
 
 				for (i = 1; i <= rwc_core_cnt[n]; i++)
-					if (rte_eal_wait_lcore(i) < 0)
+					if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0)
 						goto err;
 
-- 
2.20.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-08-22 19:38:21.064526980 +0100
+++ 0009-test-hash-rectify-slave-id-to-point-to-valid-cores.patch	2019-08-22 19:38:20.401027738 +0100
@@ -1 +1 @@
-From 477cafea6532881477da3676579ec3ca236ce47f Mon Sep 17 00:00:00 2001
+From 692fdd5ac23bf0b19ccf62e86c90c169516dc23a Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 477cafea6532881477da3676579ec3ca236ce47f ]
+
@@ -12 +13,0 @@
-Cc: stable@dpdk.org
@@ -19,2 +20,2 @@
- app/test/test_hash_readwrite_lf.c | 24 +++++++++++-------------
- 1 file changed, 11 insertions(+), 13 deletions(-)
+ test/test/test_hash_readwrite_lf.c | 22 ++++++++++------------
+ 1 file changed, 10 insertions(+), 12 deletions(-)
@@ -22,5 +23,5 @@
-diff --git a/app/test/test_hash_readwrite_lf.c b/app/test/test_hash_readwrite_lf.c
-index f9f233a73..564436196 100644
---- a/app/test/test_hash_readwrite_lf.c
-+++ b/app/test/test_hash_readwrite_lf.c
-@@ -127,9 +127,7 @@ get_enabled_cores_list(void)
+diff --git a/test/test/test_hash_readwrite_lf.c b/test/test/test_hash_readwrite_lf.c
+index f0fc63b9f..b0f415b0a 100644
+--- a/test/test/test_hash_readwrite_lf.c
++++ b/test/test/test_hash_readwrite_lf.c
+@@ -87,9 +87,7 @@ get_enabled_cores_list(void)
@@ -39 +40 @@
-@@ -739,5 +737,5 @@ test_hash_add_no_ks_lookup_hit(struct rwc_perf *rwc_perf_results, int rwc_lf,
+@@ -620,5 +618,5 @@ test_hash_add_no_ks_lookup_hit(struct rwc_perf *rwc_perf_results, int rwc_lf,
@@ -46 +47 @@
-@@ -811,5 +809,5 @@ test_hash_add_no_ks_lookup_miss(struct rwc_perf *rwc_perf_results, int rwc_lf,
+@@ -692,5 +690,5 @@ test_hash_add_no_ks_lookup_miss(struct rwc_perf *rwc_perf_results, int rwc_lf,
@@ -53 +54 @@
-@@ -887,5 +885,5 @@ test_hash_add_ks_lookup_hit_non_sp(struct rwc_perf *rwc_perf_results,
+@@ -768,5 +766,5 @@ test_hash_add_ks_lookup_hit_non_sp(struct rwc_perf *rwc_perf_results,
@@ -60 +61 @@
-@@ -963,5 +961,5 @@ test_hash_add_ks_lookup_hit_sp(struct rwc_perf *rwc_perf_results, int rwc_lf,
+@@ -844,5 +842,5 @@ test_hash_add_ks_lookup_hit_sp(struct rwc_perf *rwc_perf_results, int rwc_lf,
@@ -67 +68 @@
-@@ -1038,5 +1036,5 @@ test_hash_add_ks_lookup_miss(struct rwc_perf *rwc_perf_results, int rwc_lf, int
+@@ -919,5 +917,5 @@ test_hash_add_ks_lookup_miss(struct rwc_perf *rwc_perf_results, int rwc_lf, int
@@ -74 +75 @@
-@@ -1133,10 +1131,10 @@ test_hash_multi_add_lookup(struct rwc_perf *rwc_perf_results, int rwc_lf,
+@@ -1014,10 +1012,10 @@ test_hash_multi_add_lookup(struct rwc_perf *rwc_perf_results, int rwc_lf,
@@ -86,7 +86,0 @@
- 
-@@ -1222,5 +1220,5 @@ test_hash_add_ks_lookup_hit_extbkt(struct rwc_perf *rwc_perf_results,
- 
- 			for (i = 1; i <= rwc_core_cnt[n]; i++)
--				if (rte_eal_wait_lcore(i) < 0)
-+				if (rte_eal_wait_lcore(enabled_core_ids[i]) < 0)
- 					goto err;