X-Git-Url: https://git.liburcu.org/?p=urcu.git;a=blobdiff_plain;f=urcu%2Fmap%2Furcu.h;h=8f04cafcde5df141f84bd4f9067e0485147fd1d7;hp=217bff56d99a48e763b9abdaedaabcd5429c1580;hb=b7f721d9ba1e3bc86a6f78d8571aacb0519b071e;hpb=4de0cd31491bcb93a19c14fc1eb2a2a23ce12855 diff --git a/urcu/map/urcu.h b/urcu/map/urcu.h index 217bff5..8f04caf 100644 --- a/urcu/map/urcu.h +++ b/urcu/map/urcu.h @@ -38,31 +38,6 @@ #define RCU_MEMBARRIER #endif -/* - * RCU_MEMBARRIER is only possibly available on Linux. Fallback to - * RCU_MB - * otherwise. - */ -#if !defined(__linux__) && defined(RCU_MEMBARRIER) -#undef RCU_MEMBARRIER -#define RCU_MB -#endif - -#ifdef RCU_MEMBARRIER -#include - -/* If the headers do not support SYS_membarrier, statically use RCU_MB */ -#ifdef SYS_membarrier -# define MEMBARRIER_EXPEDITED (1 << 0) -# define MEMBARRIER_DELAYED (1 << 1) -# define MEMBARRIER_QUERY (1 << 16) -# define membarrier(...) syscall(SYS_membarrier, __VA_ARGS__) -#else -# undef RCU_MEMBARRIER -# define RCU_MB -#endif -#endif - #ifdef RCU_MEMBARRIER #define rcu_read_lock rcu_read_lock_memb @@ -94,6 +69,7 @@ #define call_rcu_before_fork call_rcu_before_fork_memb #define call_rcu_after_fork_parent call_rcu_after_fork_parent_memb #define call_rcu_after_fork_child call_rcu_after_fork_child_memb +#define rcu_barrier rcu_barrier_memb #define defer_rcu defer_rcu_memb #define rcu_defer_register_thread rcu_defer_register_thread_memb @@ -141,6 +117,7 @@ #define call_rcu_before_fork call_rcu_before_fork_sig #define call_rcu_after_fork_parent call_rcu_after_fork_parent_sig #define call_rcu_after_fork_child call_rcu_after_fork_child_sig +#define rcu_barrier rcu_barrier_sig #define defer_rcu defer_rcu_sig #define rcu_defer_register_thread rcu_defer_register_thread_sig @@ -185,6 +162,7 @@ #define call_rcu_before_fork call_rcu_before_fork_mb #define call_rcu_after_fork_parent call_rcu_after_fork_parent_mb #define call_rcu_after_fork_child call_rcu_after_fork_child_mb +#define rcu_barrier rcu_barrier_mb #define defer_rcu defer_rcu_mb #define rcu_defer_register_thread rcu_defer_register_thread_mb