Use initial-exec TLS model
[lttng-ust.git] / liblttng-ust-java-agent / jni / common / lttng_ust_context.h
index 2bdef3ae251cdb984ff86798bb420f432c032cc5..8ea43e1ae362d471279c7b77c18c5bee9e2abf3f 100644 (file)
 #ifndef LIBLTTNG_UST_JAVA_AGENT_JNI_COMMON_LTTNG_UST_CONTEXT_H_
 #define LIBLTTNG_UST_JAVA_AGENT_JNI_COMMON_LTTNG_UST_CONTEXT_H_
 
-struct lttng_ust_jni_ctx;
+#include <urcu/tls-compat.h>
+
+struct lttng_ust_jni_ctx_entry;
 
 struct lttng_ust_jni_tls {
-       struct lttng_ust_jni_ctx *ctx;
-       int32_t len;
+       struct lttng_ust_jni_ctx_entry *ctx_entries;
+       int32_t ctx_entries_len;
+       signed char *ctx_strings;
+       int32_t ctx_strings_len;
 };
 
-extern __thread struct lttng_ust_jni_tls lttng_ust_context_info_tls;
+extern DECLARE_URCU_TLS(struct lttng_ust_jni_tls, lttng_ust_context_info_tls);
 
 #endif /* LIBLTTNG_UST_JAVA_AGENT_JNI_COMMON_LTTNG_UST_CONTEXT_H_ */
This page took 0.023465 seconds and 4 git commands to generate.