X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=urcu-bp.c;h=280dd0dac4c5e00b9775e73f7b86f3a5507e5ca5;hb=e6564e91d80f5a5b86941d1f21014abbfba1a7d6;hp=1386dfc8fdfb82a533aface955c79c6f0b318daf;hpb=6b702fa4ea05b4f6d37000d5cd26d19f0d0807e0;p=userspace-rcu.git diff --git a/urcu-bp.c b/urcu-bp.c index 1386dfc..280dd0d 100644 --- a/urcu-bp.c +++ b/urcu-bp.c @@ -97,7 +97,7 @@ int rcu_bp_refcount; static void __attribute__((constructor)) rcu_bp_init(void); static -void __attribute__((destructor)) rcu_bp_exit(void); +void __attribute__((destructor)) _rcu_bp_exit(void); static pthread_mutex_t rcu_gp_lock = PTHREAD_MUTEX_INITIALIZER; @@ -494,7 +494,7 @@ void rcu_bp_unregister(struct rcu_reader *rcu_reader_reg) ret = pthread_sigmask(SIG_SETMASK, &oldmask, NULL); if (ret) abort(); - rcu_bp_exit(); + _rcu_bp_exit(); } /* @@ -524,7 +524,7 @@ void rcu_bp_init(void) } static -void rcu_bp_exit(void) +void _rcu_bp_exit(void) { mutex_lock(&init_lock); if (!--rcu_bp_refcount) { @@ -543,6 +543,15 @@ void rcu_bp_exit(void) mutex_unlock(&init_lock); } +/* + * Keep ABI compability within stable versions. This has never been + * exposed through a header, but needs to stay in the .so until the + * soname is bumped. + */ +void rcu_bp_exit(void) +{ +} + /* * Holding the rcu_gp_lock across fork will make sure we fork() don't race with * a concurrent thread executing with this same lock held. This ensures that the