fix: explicitly include urcu/config.h in files using CONFIG_RCU_ defines
[urcu.git] / src / urcu-bp.c
index 54fda1650e4f813694886d3eca64e708b93eb76f..c2ac792c219f825936e1e3676907e8b8cf9ea01a 100644 (file)
@@ -23,6 +23,7 @@
  * IBM's contributions to this file may be relicensed under LGPLv2 or later.
  */
 
+#define URCU_NO_COMPAT_IDENTIFIERS
 #define _LGPL_SOURCE
 #include <stdio.h>
 #include <pthread.h>
@@ -36,6 +37,7 @@
 #include <stdbool.h>
 #include <sys/mman.h>
 
+#include <urcu/config.h>
 #include <urcu/arch.h>
 #include <urcu/wfcqueue.h>
 #include <urcu/map/urcu-bp.h>
@@ -565,6 +567,12 @@ end:
 }
 URCU_ATTR_ALIAS("urcu_bp_register") void rcu_bp_register();
 
+void urcu_bp_register_thread(void)
+{
+       if (caa_unlikely(!URCU_TLS(urcu_bp_reader)))
+               urcu_bp_register(); /* If not yet registered. */
+}
+
 /* Disable signals, take mutex, remove from registry */
 static
 void urcu_bp_unregister(struct rcu_reader *rcu_reader_reg)
This page took 0.023288 seconds and 4 git commands to generate.