Signed-off-by: Junchang Wang <junchangwang@xxxxxxxxx> Signed-off-by: Akira Yokosawa <akiyks@xxxxxxxxx> --- CodeSamples/count/count_stat_eventual.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/CodeSamples/count/count_stat_eventual.c b/CodeSamples/count/count_stat_eventual.c index 464de30..1365168 100644 --- a/CodeSamples/count/count_stat_eventual.c +++ b/CodeSamples/count/count_stat_eventual.c @@ -40,16 +40,17 @@ void *eventual(void *arg) { int t; unsigned long sum; + int stopflag_l = 0; - while (READ_ONCE(stopflag) < 3) { + while (stopflag_l < 3) { sum = 0; for_each_thread(t) sum += READ_ONCE(per_thread(counter, t)); WRITE_ONCE(global_count, sum); poll(NULL, 0, 1); - if (READ_ONCE(stopflag)) { + if ((stopflag_l = READ_ONCE(stopflag)) != 0) { smp_mb(); - WRITE_ONCE(stopflag, READ_ONCE(stopflag) + 1); + WRITE_ONCE(stopflag, ++stopflag_l); } } return NULL; @@ -68,7 +69,6 @@ void count_init(void) void count_cleanup(void) { WRITE_ONCE(stopflag, 1); - smp_mb(); while (READ_ONCE(stopflag) < 3) poll(NULL, 0, 1); smp_mb(); -- 2.7.4 -- To unsubscribe from this list: send the line "unsubscribe perfbook" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html