X-Git-Url: http://git.liburcu.org/?p=urcu.git;a=blobdiff_plain;f=urcu-qsbr.h;h=a691c521db16441091abd177884cfca94bc5af23;hp=8e6f1e463a7907075e1c76d4a6df370533e0b268;hb=0376e7b2f8d26778ebc4750b34e718c062c92764;hpb=36bc70a84250927ba68d5096a0a9740aec157f9b diff --git a/urcu-qsbr.h b/urcu-qsbr.h index 8e6f1e4..a691c52 100644 --- a/urcu-qsbr.h +++ b/urcu-qsbr.h @@ -40,6 +40,8 @@ extern "C" { #endif +#include "urcu-qsbr-map.h" + /* * Important ! * @@ -62,15 +64,15 @@ extern "C" { * rcu_read_unlock() * * Mark the beginning and end of a read-side critical section. - * DON'T FORGET TO USE RCU_REGISTER/UNREGISTER_THREAD() FOR EACH THREAD WITH - * READ-SIDE CRITICAL SECTION. + * DON'T FORGET TO USE rcu_register_thread/rcu_unregister_thread() + * FOR EACH THREAD WITH READ-SIDE CRITICAL SECTION. */ -#define rcu_read_lock() _rcu_read_lock() -#define rcu_read_unlock() _rcu_read_unlock() +#define rcu_read_lock_qsbr _rcu_read_lock +#define rcu_read_unlock_qsbr _rcu_read_unlock -#define rcu_quiescent_state() _rcu_quiescent_state() -#define rcu_thread_offline() _rcu_thread_offline() -#define rcu_thread_online() _rcu_thread_online() +#define rcu_quiescent_state_qsbr _rcu_quiescent_state +#define rcu_thread_offline_qsbr _rcu_thread_offline +#define rcu_thread_online_qsbr _rcu_thread_online #else /* !_LGPL_SOURCE */ @@ -82,12 +84,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 -DURCU_DEBUG (even non-LGPL/GPL applications). This is the + * recompiled with -DRCU_DEBUG (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(URCU_DEBUG)) +#if (!defined(BUILD_QSBR_LIB) && defined(RCU_DEBUG)) static inline void rcu_read_lock(void) { @@ -97,12 +99,12 @@ static inline void rcu_read_lock(void) { } -#else /* !URCU_DEBUG */ +#else /* !RCU_DEBUG */ extern void rcu_read_lock(void); extern void rcu_read_unlock(void); -#endif /* !URCU_DEBUG */ +#endif /* !RCU_DEBUG */ extern void rcu_quiescent_state(void); extern void rcu_thread_offline(void); @@ -122,4 +124,7 @@ extern void rcu_unregister_thread(void); } #endif +#include "urcu-call-rcu.h" +#include "urcu-defer.h" + #endif /* _URCU_QSBR_H */