X-Git-Url: https://git.liburcu.org/?a=blobdiff_plain;f=src%2Flttng-context-callstack.c;h=1ae340a17933a01237390041e4649e0825617f18;hb=HEAD;hp=3663168eb06cef9f0da996e898958ee4596bf6cd;hpb=606828e401c405619a0c7249e8c7e3291cc1cb45;p=lttng-modules.git diff --git a/src/lttng-context-callstack.c b/src/lttng-context-callstack.c index 3663168e..4385472e 100644 --- a/src/lttng-context-callstack.c +++ b/src/lttng-context-callstack.c @@ -46,6 +46,7 @@ #include #include #include +#include #include #include #include "wrapper/vmalloc.h" @@ -90,9 +91,9 @@ error_alloc: } static -void lttng_callstack_sequence_destroy(struct lttng_kernel_ctx_field *field) +void lttng_callstack_sequence_destroy(void *priv) { - struct field_data *fdata = field->priv; + struct field_data *fdata = priv; field_data_free(fdata); } @@ -100,25 +101,26 @@ void lttng_callstack_sequence_destroy(struct lttng_kernel_ctx_field *field) static const struct lttng_kernel_event_field *event_fields_kernel[NR_FIELDS] = { lttng_kernel_static_event_field("_callstack_kernel_length", lttng_kernel_static_type_integer_from_type(unsigned int, __BYTE_ORDER, 10), - false, false, false), + false, false), lttng_kernel_static_event_field("callstack_kernel", - lttng_kernel_static_type_sequence("_callstack_kernel_length", + lttng_kernel_static_type_sequence(NULL, lttng_kernel_static_type_integer_from_type(unsigned long, __BYTE_ORDER, 16), 0, none), - false, false, false), + false, false), }; static const struct lttng_kernel_event_field *event_fields_user[NR_FIELDS] = { lttng_kernel_static_event_field("_callstack_user_length", lttng_kernel_static_type_integer_from_type(unsigned int, __BYTE_ORDER, 10), - false, false, false), + false, false), lttng_kernel_static_event_field("callstack_user", - lttng_kernel_static_type_sequence("_callstack_user_length", + lttng_kernel_static_type_sequence(NULL, lttng_kernel_static_type_integer_from_type(unsigned long, __BYTE_ORDER, 16), 0, none), - false, false, false), + false, false), }; +static const struct lttng_kernel_event_field **lttng_cs_event_fields(enum lttng_cs_ctx_modes mode) { switch (mode) { @@ -158,7 +160,7 @@ int __lttng_add_callstack_generic(struct lttng_kernel_ctx **ctx, } memset(&ctx_field, 0, sizeof(ctx_field)); ctx_field.event_field = event_fields[0]; - ctx_field.get_size_arg = lttng_callstack_length_get_size; + ctx_field.get_size = lttng_callstack_length_get_size; ctx_field.record = lttng_callstack_length_record; ctx_field.priv = fdata; ret = lttng_kernel_context_append(ctx, &ctx_field); @@ -169,7 +171,7 @@ int __lttng_add_callstack_generic(struct lttng_kernel_ctx **ctx, memset(&ctx_field, 0, sizeof(ctx_field)); ctx_field.event_field = event_fields[1]; - ctx_field.get_size_arg = lttng_callstack_sequence_get_size; + ctx_field.get_size = lttng_callstack_sequence_get_size; ctx_field.record = lttng_callstack_sequence_record; ctx_field.destroy = lttng_callstack_sequence_destroy; ctx_field.priv = fdata;