aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmilio G. Cota <cota@braap.org>2016-10-14 11:54:51 +0200
committerPaolo Bonzini <pbonzini@redhat.com>2016-10-24 15:27:19 +0200
commit977ec47de06bdcb24f01c93bc125b7c6c221a1c5 (patch)
tree43957013107709b5ed29cb48ffedf5046d6dbd4d
parent803cf26a9e019b5d2256a8edeb22e3538c4f3261 (diff)
downloadqemu-977ec47de06bdcb24f01c93bc125b7c6c221a1c5.zip
qemu-977ec47de06bdcb24f01c93bc125b7c6c221a1c5.tar.gz
qemu-977ec47de06bdcb24f01c93bc125b7c6c221a1c5.tar.bz2
qht-bench: relax test_start/stop atomic accesses
test_start/stop are used only as flags to loop on. Barriers are unnecessary, since no dependent data is transferred among threads apart from the flags themselves. This commit relaxes the three accesses to test_start/stop that were not yet relaxed. Signed-off-by: Emilio G. Cota <cota@braap.org>
-rw-r--r--tests/qht-bench.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/tests/qht-bench.c b/tests/qht-bench.c
index 76360a0..2afa09d 100644
--- a/tests/qht-bench.c
+++ b/tests/qht-bench.c
@@ -193,7 +193,7 @@ static void *thread_func(void *p)
rcu_register_thread();
atomic_inc(&n_ready_threads);
- while (!atomic_mb_read(&test_start)) {
+ while (!atomic_read(&test_start)) {
cpu_relax();
}
@@ -393,11 +393,11 @@ static void run_test(void)
while (atomic_read(&n_ready_threads) != n_rw_threads + n_rz_threads) {
cpu_relax();
}
- atomic_mb_set(&test_start, true);
+ atomic_set(&test_start, true);
do {
remaining = sleep(duration);
} while (remaining);
- atomic_mb_set(&test_stop, true);
+ atomic_set(&test_stop, true);
for (i = 0; i < n_rw_threads; i++) {
qemu_thread_join(&rw_threads[i]);