X-Git-Url: https://git.lttng.org/?p=urcu.git;a=blobdiff_plain;f=tests%2Ftest_qsbr.c;h=4f19c72aa3c7d0bdb292d55a3525f0fcea458077;hp=f3550a0be5902911549892fbf87974eb7c139480;hb=5481ddb381061bda64aebc039900d21cac6a6caf;hpb=a50a7b4333a5039f1471c0b7cfbfb3d6dc5379fb diff --git a/tests/test_qsbr.c b/tests/test_qsbr.c index f3550a0..4f19c72 100644 --- a/tests/test_qsbr.c +++ b/tests/test_qsbr.c @@ -3,7 +3,7 @@ * * Userspace RCU library - test program * - * Copyright February 2009 - Mathieu Desnoyers + * Copyright February 2009 - Mathieu Desnoyers * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -230,7 +230,7 @@ void *thr_reader(void *_count) while (!test_go) { } - smp_mb(); + cmm_smp_mb(); for (;;) { rcu_read_lock(); @@ -251,6 +251,10 @@ void *thr_reader(void *_count) rcu_unregister_thread(); + /* test extra thread registration */ + rcu_register_thread(); + rcu_unregister_thread(); + *count = nr_reads; printf_verbose("thread_end %s, thread id : %lx, tid %lu\n", "reader", pthread_self(), (unsigned long)gettid()); @@ -271,7 +275,7 @@ void *thr_writer(void *_count) while (!test_go) { } - smp_mb(); + cmm_smp_mb(); for (;;) { new = test_array_alloc(); @@ -420,7 +424,7 @@ int main(int argc, char **argv) exit(1); } - smp_mb(); + cmm_smp_mb(); test_go = 1;