X-Git-Url: https://git.liburcu.org/?p=urcu.git;a=blobdiff_plain;f=urcu%2Fmap%2Furcu.h;h=8f04cafcde5df141f84bd4f9067e0485147fd1d7;hp=becc6a0f438a4eda367e3f779885a633534bdc71;hb=b7f721d9ba1e3bc86a6f78d8571aacb0519b071e;hpb=882f335739b978d1c55be2faeed077f315afe5d7 diff --git a/urcu/map/urcu.h b/urcu/map/urcu.h index becc6a0..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 @@ -77,8 +52,7 @@ #define rcu_exit rcu_exit_memb #define synchronize_rcu synchronize_rcu_memb #define rcu_reader rcu_reader_memb -#define rcu_gp_ctr rcu_gp_ctr_memb -#define rcu_gp_futex rcu_gp_futex_memb +#define rcu_gp rcu_gp_memb #define get_cpu_call_rcu_data get_cpu_call_rcu_data_memb #define get_call_rcu_thread get_call_rcu_thread_memb @@ -95,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 @@ -125,8 +100,7 @@ #define rcu_exit rcu_exit_sig #define synchronize_rcu synchronize_rcu_sig #define rcu_reader rcu_reader_sig -#define rcu_gp_ctr rcu_gp_ctr_sig -#define rcu_gp_futex rcu_gp_futex_sig +#define rcu_gp rcu_gp_sig #define get_cpu_call_rcu_data get_cpu_call_rcu_data_sig #define get_call_rcu_thread get_call_rcu_thread_sig @@ -143,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 @@ -170,8 +145,7 @@ #define rcu_exit rcu_exit_mb #define synchronize_rcu synchronize_rcu_mb #define rcu_reader rcu_reader_mb -#define rcu_gp_ctr rcu_gp_ctr_mb -#define rcu_gp_futex rcu_gp_futex_mb +#define rcu_gp rcu_gp_mb #define get_cpu_call_rcu_data get_cpu_call_rcu_data_mb #define get_call_rcu_thread get_call_rcu_thread_mb @@ -188,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