X-Git-Url: http://git.liburcu.org/?p=userspace-rcu.git;a=blobdiff_plain;f=urcu%2Fstatic%2Furcu-bp.h;fp=urcu%2Fstatic%2Furcu-bp.h;h=0bdefff2b15de3339806e4e3df7cb2117148a651;hp=b6d5f132778380c57af501307cf25e017c92c8ec;hb=791151d0b8f0314496cf18c822c071b1dd5791ea;hpb=e4749953c309cb418cd583cdd80b6dd0b2c4161f diff --git a/urcu/static/urcu-bp.h b/urcu/static/urcu-bp.h index b6d5f13..0bdefff 100644 --- a/urcu/static/urcu-bp.h +++ b/urcu/static/urcu-bp.h @@ -39,6 +39,7 @@ #include #include #include +#include /* * This code section can only be included in LGPL 2.1 compatible source code. @@ -155,6 +156,7 @@ static inline void _rcu_read_lock(void) { unsigned long tmp; + rcu_read_lock_debug(); if (caa_unlikely(!URCU_TLS(rcu_reader))) rcu_bp_register(); /* If not yet registered. */ cmm_barrier(); /* Ensure the compiler does not reorder us with mutex */ @@ -175,6 +177,7 @@ static inline void _rcu_read_unlock(void) cmm_smp_mb(); _CMM_STORE_SHARED(URCU_TLS(rcu_reader)->ctr, URCU_TLS(rcu_reader)->ctr - RCU_GP_COUNT); cmm_barrier(); /* Ensure the compiler does not reorder us with mutex */ + rcu_read_unlock_debug(); } /*