projects
/
lttng-ust.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix: sync event enablers before choosing header type
[lttng-ust.git]
/
liblttng-ust
/
lttng-context-vtid.c
diff --git
a/liblttng-ust/lttng-context-vtid.c
b/liblttng-ust/lttng-context-vtid.c
index 4b1da4f8e9b78541473f3e838352e04ac4461679..f28e470a38c91be3e88c7b1d1fcd42c591d73c67 100644
(file)
--- a/
liblttng-ust/lttng-context-vtid.c
+++ b/
liblttng-ust/lttng-context-vtid.c
@@
-20,6
+20,7
@@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
+#define _LGPL_SOURCE
#include <sys/types.h>
#include <unistd.h>
#include <lttng/ust-events.h>
#include <sys/types.h>
#include <unistd.h>
#include <lttng/ust-events.h>
@@
-46,7
+47,7
@@
void lttng_context_vtid_reset(void)
}
static
}
static
-size_t vtid_get_size(size_t offset)
+size_t vtid_get_size(s
truct lttng_ctx_field *field, s
ize_t offset)
{
size_t size = 0;
{
size_t size = 0;
@@
-67,6
+68,15
@@
void vtid_record(struct lttng_ctx_field *field,
sizeof(URCU_TLS(cached_vtid)));
}
sizeof(URCU_TLS(cached_vtid)));
}
+static
+void vtid_get_value(struct lttng_ctx_field *field,
+ struct lttng_ctx_value *value)
+{
+ if (caa_unlikely(!URCU_TLS(cached_vtid)))
+ URCU_TLS(cached_vtid) = gettid();
+ value->u.s64 = URCU_TLS(cached_vtid);
+}
+
int lttng_add_vtid_to_ctx(struct lttng_ctx **ctx)
{
struct lttng_ctx_field *field;
int lttng_add_vtid_to_ctx(struct lttng_ctx **ctx)
{
struct lttng_ctx_field *field;
@@
-88,6
+98,8
@@
int lttng_add_vtid_to_ctx(struct lttng_ctx **ctx)
field->event_field.type.u.basic.integer.encoding = lttng_encode_none;
field->get_size = vtid_get_size;
field->record = vtid_record;
field->event_field.type.u.basic.integer.encoding = lttng_encode_none;
field->get_size = vtid_get_size;
field->record = vtid_record;
+ field->get_value = vtid_get_value;
+ lttng_context_update(*ctx);
return 0;
}
return 0;
}
This page took
0.024633 seconds
and
4
git commands to generate.