X-Git-Url: https://git.liburcu.org/?p=urcu.git;a=blobdiff_plain;f=urcu-qsbr.h;h=82a045c2bc114b714891903ccab3b0b87fc52f4b;hp=20dbf47b3aced49cfea55dd9c76e4ad69ed525cb;hb=6a00c945d10d68e174c9fe96b2a98eb124b0d77e;hpb=af7c2dbeac32c663b64ad05e4eca70e18784463b diff --git a/urcu-qsbr.h b/urcu-qsbr.h index 20dbf47..82a045c 100644 --- a/urcu-qsbr.h +++ b/urcu-qsbr.h @@ -41,7 +41,11 @@ extern "C" { #endif -#include "urcu/map/urcu-qsbr.h" +#include + +#ifdef RCU_DEBUG /* For backward compatibility */ +#define DEBUG_RCU +#endif /* * Important ! @@ -70,6 +74,7 @@ extern "C" { */ #define rcu_read_lock_qsbr _rcu_read_lock #define rcu_read_unlock_qsbr _rcu_read_unlock +#define rcu_read_ongoing_qsbr _rcu_read_ongoing #define rcu_quiescent_state_qsbr _rcu_quiescent_state #define rcu_thread_offline_qsbr _rcu_thread_offline @@ -85,12 +90,12 @@ extern "C" { * QSBR read lock/unlock are guaranteed to be no-ops. Therefore, we expose them * in the LGPL header for any code to use. However, the debug version is not * nops and may contain sanity checks. To activate it, applications must be - * recompiled with -DRCU_DEBUG (even non-LGPL/GPL applications). This is the + * recompiled with -DDEBUG_RCU (even non-LGPL/GPL applications). This is the * best trade-off between license/performance/code triviality and * library debugging & tracing features we could come up with. */ -#if (!defined(BUILD_QSBR_LIB) && defined(RCU_DEBUG)) +#if (!defined(BUILD_QSBR_LIB) && !defined(DEBUG_RCU)) static inline void rcu_read_lock(void) { @@ -100,13 +105,14 @@ static inline void rcu_read_unlock(void) { } -#else /* !RCU_DEBUG */ +#else /* !DEBUG_RCU */ extern void rcu_read_lock(void); extern void rcu_read_unlock(void); -#endif /* !RCU_DEBUG */ +#endif /* !DEBUG_RCU */ +extern int rcu_read_ongoing(void); extern void rcu_quiescent_state(void); extern void rcu_thread_offline(void); extern void rcu_thread_online(void); @@ -125,7 +131,8 @@ extern void rcu_unregister_thread(void); } #endif -#include "urcu-call-rcu.h" -#include "urcu-defer.h" +#include +#include +#include #endif /* _URCU_QSBR_H */