X-Git-Url: https://git.liburcu.org/?p=urcu.git;a=blobdiff_plain;f=src%2Furcu-bp.c;h=05efd97eb67a2c05c99a09dfb5c6e29e888ff81e;hp=54fda1650e4f813694886d3eca64e708b93eb76f;hb=5b46e39d0e4d2592853c7bfc11add02b1101c04b;hpb=99bfa9e9e88b273c5a3134eafb9c31938f3af7d6 diff --git a/src/urcu-bp.c b/src/urcu-bp.c index 54fda16..05efd97 100644 --- a/src/urcu-bp.c +++ b/src/urcu-bp.c @@ -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 #include @@ -565,6 +566,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)