Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
test_urcu_wfs_dynlink_LDADD = $(URCU_COMMON_LIB)
test_urcu_hash_SOURCES = test_urcu_hash.c $(COMPAT)
-test_urcu_hash_CFLAGS = -DRCU_MEMBARRIER $(AM_CFLAGS)
-test_urcu_hash_LDADD = $(URCU) $(URCU_CDS_LIB)
+test_urcu_hash_CFLAGS = -DRCU_QSBR $(AM_CFLAGS)
+test_urcu_hash_LDADD = $(URCU_QSBR_LIB) $(URCU_CDS_LIB)
urcutorture.c: api.h
#else
#define debug_yield_read()
#endif
-#include <urcu.h>
+#include <urcu-qsbr.h>
#include <urcu/rculfhash.h>
#include <urcu-call-rcu.h>
nr_reads++;
if (unlikely(!test_duration_read()))
break;
+ if (unlikely((nr_reads & ((1 << 10) - 1)) == 0))
+ rcu_quiescent_state();
}
rcu_unregister_thread();
break;
if (unlikely(wdelay))
loop_sleep(wdelay);
+ if (unlikely((nr_writes & ((1 << 10) - 1)) == 0))
+ rcu_quiescent_state();
}
rcu_unregister_thread();