X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=liblttng-ust%2Flttng-probes.c;h=390265add0d22feb4936ac09962aa05a9c342434;hb=6bf962a42535935d8c4c8811b9482f90c5b98212;hp=433171cfb04635c424394a9e2c292f82a70a8ae4;hpb=71d3169070a4c9e0df87a9d825dd7520022385a7;p=lttng-ust.git diff --git a/liblttng-ust/lttng-probes.c b/liblttng-ust/lttng-probes.c index 433171cf..390265ad 100644 --- a/liblttng-ust/lttng-probes.c +++ b/liblttng-ust/lttng-probes.c @@ -20,6 +20,7 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ +#define _LGPL_SOURCE #include #include #include @@ -194,6 +195,8 @@ int lttng_probe_register(struct lttng_probe_desc *desc) { int ret = 0; + lttng_ust_fixup_tls(); + /* * If version mismatch, don't register, but don't trigger assert * on caller. The version check just prints an error. @@ -201,7 +204,7 @@ int lttng_probe_register(struct lttng_probe_desc *desc) if (!check_provider_version(desc)) return 0; - ust_lock(); + ust_lock_nocheck(); /* * Check if the provider has already been registered. @@ -234,10 +237,12 @@ int ltt_probe_register(struct lttng_probe_desc *desc) void lttng_probe_unregister(struct lttng_probe_desc *desc) { + lttng_ust_fixup_tls(); + if (!check_provider_version(desc)) return; - ust_lock(); + ust_lock_nocheck(); if (!desc->lazy) cds_list_del(&desc->head); else