X-Git-Url: https://git.liburcu.org/?p=urcu.git;a=blobdiff_plain;f=urcu-qsbr.h;h=116fd77146e5b8b04aa780f195ca5c11a34590f5;hp=21c2a2e0c9bf299804c4d6a40aa31a13e41d5186;hb=af147b83c4f67d99e6582f15eea5cb2ae51b8d36;hpb=7e30abe3df0e83eeb741bfc18d07cb016af804a1 diff --git a/urcu-qsbr.h b/urcu-qsbr.h index 21c2a2e..116fd77 100644 --- a/urcu-qsbr.h +++ b/urcu-qsbr.h @@ -36,6 +36,10 @@ */ #include +#ifdef __cplusplus +extern "C" { +#endif + /* * Important ! * @@ -58,8 +62,8 @@ * 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() @@ -78,12 +82,12 @@ * 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) { @@ -93,12 +97,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); @@ -114,4 +118,8 @@ extern void synchronize_rcu(void); extern void rcu_register_thread(void); extern void rcu_unregister_thread(void); +#ifdef __cplusplus +} +#endif + #endif /* _URCU_QSBR_H */