X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=src%2Flib%2Flttng-ust%2Flttng-context-ipc-ns.c;h=078e646106b576bc8deee1778b0e291c6389f6e4;hb=c246521ddcba1d1d28cfa0482aa500b9122e7264;hp=fcf6b0cc50106e0ac3f7d9831e1ae0d96c9d9c97;hpb=baa8acf3af23bc5d9373144bef8147744b5ae01f;p=lttng-ust.git diff --git a/src/lib/lttng-ust/lttng-context-ipc-ns.c b/src/lib/lttng-ust/lttng-context-ipc-ns.c index fcf6b0cc..078e6461 100644 --- a/src/lib/lttng-ust/lttng-context-ipc-ns.c +++ b/src/lib/lttng-ust/lttng-context-ipc-ns.c @@ -91,6 +91,7 @@ void lttng_context_ipc_ns_reset(void) static size_t ipc_ns_get_size(void *priv __attribute__((unused)), + struct lttng_ust_probe_ctx *probe_ctx __attribute__((unused)), size_t offset) { size_t size = 0; @@ -102,8 +103,9 @@ size_t ipc_ns_get_size(void *priv __attribute__((unused)), static void ipc_ns_record(void *priv __attribute__((unused)), - struct lttng_ust_ring_buffer_ctx *ctx, - struct lttng_ust_channel_buffer *chan) + struct lttng_ust_probe_ctx *probe_ctx __attribute__((unused)), + struct lttng_ust_ring_buffer_ctx *ctx, + struct lttng_ust_channel_buffer *chan) { ino_t ipc_ns; @@ -113,12 +115,13 @@ void ipc_ns_record(void *priv __attribute__((unused)), static void ipc_ns_get_value(void *priv __attribute__((unused)), + struct lttng_ust_probe_ctx *probe_ctx __attribute__((unused)), struct lttng_ust_ctx_value *value) { - value->u.s64 = get_ipc_ns(); + value->u.u64 = get_ipc_ns(); } -const struct lttng_ust_ctx_field *ctx_field = lttng_ust_static_ctx_field( +static const struct lttng_ust_ctx_field *ctx_field = lttng_ust_static_ctx_field( lttng_ust_static_event_field("ipc_ns", lttng_ust_static_type_integer(sizeof(ino_t) * CHAR_BIT, lttng_ust_rb_alignof(ino_t) * CHAR_BIT, @@ -148,9 +151,11 @@ error_find_context: } /* - * * Force a read (imply TLS fixup for dlopen) of TLS variables. - * */ -void lttng_fixup_ipc_ns_tls(void) + * Force a read (imply TLS allocation for dlopen) of TLS variables. + */ +void lttng_ust_ipc_ns_init_thread(int flags) { asm volatile ("" : : "m" (URCU_TLS(cached_ipc_ns))); + if (flags & LTTNG_UST_INIT_THREAD_CONTEXT_CACHE) + (void)get_ipc_ns(); }