projects
/
urcu.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Permit both 32 and 64-bit builds
[urcu.git]
/
tests
/
test_qsbr.c
diff --git
a/tests/test_qsbr.c
b/tests/test_qsbr.c
index 89a94235eedb3d8ddf0d1e542e45017daf503ee2..43797716bcaff18fc1a8c9d6eb2fffe2bc3d6e95 100644
(file)
--- a/
tests/test_qsbr.c
+++ b/
tests/test_qsbr.c
@@
-56,7
+56,11
@@
static inline pid_t gettid(void)
}
#endif
}
#endif
+#ifndef DYNAMIC_LINK_TEST
#define _LGPL_SOURCE
#define _LGPL_SOURCE
+#else
+#define debug_yield_read()
+#endif
#include "../urcu-qsbr.h"
struct test_array {
#include "../urcu-qsbr.h"
struct test_array {
@@
-215,18
+219,18
@@
void *thr_reader(void *_count)
smp_mb();
for (;;) {
smp_mb();
for (;;) {
-
_
rcu_read_lock();
- local_ptr =
_
rcu_dereference(test_rcu_pointer);
+ rcu_read_lock();
+ local_ptr = rcu_dereference(test_rcu_pointer);
debug_yield_read();
if (local_ptr)
assert(local_ptr->a == 8);
if (unlikely(rduration))
loop_sleep(rduration);
debug_yield_read();
if (local_ptr)
assert(local_ptr->a == 8);
if (unlikely(rduration))
loop_sleep(rduration);
-
_
rcu_read_unlock();
+ rcu_read_unlock();
nr_reads++;
/* QS each 1024 reads */
if (unlikely((nr_reads & ((1 << 10) - 1)) == 0))
nr_reads++;
/* QS each 1024 reads */
if (unlikely((nr_reads & ((1 << 10) - 1)) == 0))
-
_
rcu_quiescent_state();
+ rcu_quiescent_state();
if (unlikely(!test_duration_read()))
break;
}
if (unlikely(!test_duration_read()))
break;
}
@@
-258,7
+262,7
@@
void *thr_writer(void *_count)
for (;;) {
new = test_array_alloc();
new->a = 8;
for (;;) {
new = test_array_alloc();
new->a = 8;
- old =
_
rcu_publish_content(&test_rcu_pointer, new);
+ old = rcu_publish_content(&test_rcu_pointer, new);
/* can be done after unlock */
if (old)
old->a = 0;
/* can be done after unlock */
if (old)
old->a = 0;
This page took
0.024383 seconds
and
4
git commands to generate.