projects
/
urcu.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
urcu qsbr: add DEBUG_RCU self check
[urcu.git]
/
urcu-qsbr.h
diff --git
a/urcu-qsbr.h
b/urcu-qsbr.h
index f5392a32dfcc7ae3a4647b4a12f4882baaf042bc..448074d019b28ea1219660c43f990b39e09b7479 100644
(file)
--- a/
urcu-qsbr.h
+++ b/
urcu-qsbr.h
@@
-31,6
+31,7
@@
#include <stdlib.h>
#include <pthread.h>
#include <stdlib.h>
#include <pthread.h>
+#include <assert.h>
#include <compiler.h>
#include <arch.h>
#include <compiler.h>
#include <arch.h>
@@
-108,6
+109,12
@@
*/
#define KICK_READER_LOOPS 10000
*/
#define KICK_READER_LOOPS 10000
+#ifdef DEBUG_RCU
+#define rcu_assert(args...) assert(args)
+#else
+#define rcu_assert(args...)
+#endif
+
#ifdef DEBUG_YIELD
#include <sched.h>
#include <time.h>
#ifdef DEBUG_YIELD
#include <sched.h>
#include <time.h>
@@
-180,6
+187,7
@@
static inline int rcu_gp_ongoing(long *value)
static inline void _rcu_read_lock(void)
{
static inline void _rcu_read_lock(void)
{
+ rcu_assert(rcu_reader_qs_gp & 1);
}
static inline void _rcu_read_unlock(void)
}
static inline void _rcu_read_unlock(void)
This page took
0.02281 seconds
and
4
git commands to generate.