Skip to content

Commit

Permalink
dev-libs/concurrencykit: fix ck_hp_fifo test on high cpu count
Browse files Browse the repository at this point in the history
Package-Manager: Portage-3.0.9, Repoman-3.0.2
Signed-off-by: Conrad Kostecki <[email protected]>
  • Loading branch information
ConiKost committed Dec 1, 2020
1 parent 73c5c0c commit 47faa4b
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 0 deletions.
1 change: 1 addition & 0 deletions dev-libs/concurrencykit/concurrencykit-0.7.0-r1.ebuild
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ PATCHES=(
"${FILESDIR}/${P}-glibc-2.30.patch"
"${FILESDIR}/${P}-gzip.patch"
"${FILESDIR}/${P}-static-libs.patch"
"${FILESDIR}/${P}-tests.patch"
)

src_configure() {
Expand Down
33 changes: 33 additions & 0 deletions dev-libs/concurrencykit/files/concurrencykit-0.7.0-tests.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
From 07835a3d08d96db30393c235f95649e792883d50 Mon Sep 17 00:00:00 2001
From: Samy Al Bahra <[email protected]>
Date: Mon, 30 Nov 2020 18:33:51 -0500
Subject: [PATCH] regressions/ck_hp_fifo: fixes false-positive from #165.

Add busy-wait barrier before next stage of test. Otherwise,
some threads may enter it and a non-empty queue state is observed.
---
regressions/ck_hp/validate/ck_hp_fifo.c | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/regressions/ck_hp/validate/ck_hp_fifo.c b/regressions/ck_hp/validate/ck_hp_fifo.c
index 4454283c..5820f1aa 100644
--- a/regressions/ck_hp/validate/ck_hp_fifo.c
+++ b/regressions/ck_hp/validate/ck_hp_fifo.c
@@ -55,6 +55,7 @@ static struct affinity a;
static int size;
static unsigned int barrier;
static unsigned int e_barrier;
+static unsigned int s_barrier;

static void *
test(void *c)
@@ -98,6 +99,9 @@ test(void *c)
}
}

+ ck_pr_inc_uint(&s_barrier);
+ while (ck_pr_load_uint(&s_barrier) < (unsigned int)nthr);
+
for (i = 0; i < ITERATIONS; i++) {
for (j = 0; j < size; j++) {
fifo_entry = malloc(sizeof(ck_hp_fifo_entry_t));

0 comments on commit 47faa4b

Please sign in to comment.