X-Git-Url: https://git.liburcu.org/?p=urcu.git;a=blobdiff_plain;f=urcu-static.h;h=46fe64a902c177f3af572732f115f056d7aef1dc;hp=ad415ac7e86d5c686dc49ddb3f464ad8a24f8178;hb=06f22bdbb0c4c4d5db42a2e2dc35818aa61415be;hpb=5481ddb381061bda64aebc039900d21cac6a6caf diff --git a/urcu-static.h b/urcu-static.h index ad415ac..46fe64a 100644 --- a/urcu-static.h +++ b/urcu-static.h @@ -222,7 +222,7 @@ struct rcu_reader { unsigned long ctr; char need_mb; /* Data used for registry */ - struct list_head node __attribute__((aligned(CACHE_LINE_SIZE))); + struct list_head node __attribute__((aligned(CAA_CACHE_LINE_SIZE))); pthread_t tid; }; @@ -250,7 +250,7 @@ static inline int rcu_gp_ongoing(unsigned long *ctr) * Make sure both tests below are done on the same version of *value * to insure consistency. */ - v = LOAD_SHARED(*ctr); + v = CAA_LOAD_SHARED(*ctr); return (v & RCU_GP_CTR_NEST_MASK) && ((v ^ rcu_gp_ctr) & RCU_GP_CTR_PHASE); } @@ -266,14 +266,14 @@ static inline void _rcu_read_lock(void) * RCU_GP_COUNT | (~RCU_GP_CTR_PHASE or RCU_GP_CTR_PHASE) */ if (likely(!(tmp & RCU_GP_CTR_NEST_MASK))) { - _STORE_SHARED(rcu_reader.ctr, _LOAD_SHARED(rcu_gp_ctr)); + _CAA_STORE_SHARED(rcu_reader.ctr, _CAA_LOAD_SHARED(rcu_gp_ctr)); /* * Set active readers count for outermost nesting level before * accessing the pointer. See smp_mb_master(). */ smp_mb_slave(RCU_MB_GROUP); } else { - _STORE_SHARED(rcu_reader.ctr, tmp + RCU_GP_COUNT); + _CAA_STORE_SHARED(rcu_reader.ctr, tmp + RCU_GP_COUNT); } } @@ -288,12 +288,12 @@ static inline void _rcu_read_unlock(void) */ if (likely((tmp & RCU_GP_CTR_NEST_MASK) == RCU_GP_COUNT)) { smp_mb_slave(RCU_MB_GROUP); - _STORE_SHARED(rcu_reader.ctr, rcu_reader.ctr - RCU_GP_COUNT); + _CAA_STORE_SHARED(rcu_reader.ctr, rcu_reader.ctr - RCU_GP_COUNT); /* write rcu_reader.ctr before read futex */ smp_mb_slave(RCU_MB_GROUP); wake_up_gp(); } else { - _STORE_SHARED(rcu_reader.ctr, rcu_reader.ctr - RCU_GP_COUNT); + _CAA_STORE_SHARED(rcu_reader.ctr, rcu_reader.ctr - RCU_GP_COUNT); } cmm_barrier(); /* Ensure the compiler does not reorder us with mutex */ }