From 07835a3d08d96db30393c235f95649e792883d50 Mon Sep 17 00:00:00 2001 From: Samy Al Bahra 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));