X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=ltt-sessiond%2Fcontext.c;h=35cb50b7b0c8cde13b8ee1c56bdec2341033e41e;hp=aebee06074417e39c39b857047e0b6a033c0b4af;hb=54d01ffb43587b221dc50ec42b6070fad89bd255;hpb=e848fc768a950acc1b823fcb139057a4fac1442a diff --git a/ltt-sessiond/context.c b/ltt-sessiond/context.c index aebee0607..35cb50b7b 100644 --- a/ltt-sessiond/context.c +++ b/ltt-sessiond/context.c @@ -20,11 +20,11 @@ #include #include #include +#include #include -#include +#include -#include "lttngerr.h" #include "context.h" #include "kernel-ctl.h" @@ -151,15 +151,24 @@ error: /* * Add kernel context to tracer. */ -int add_kernel_context(struct ltt_kernel_session *ksession, - struct lttng_kernel_context *kctx, char *event_name, +int context_kernel_add(struct ltt_kernel_session *ksession, + struct lttng_event_context *ctx, char *event_name, char *channel_name) { int ret; struct ltt_kernel_channel *kchan; + struct lttng_kernel_context kctx; + + /* Setup kernel context structure */ + kctx.ctx = ctx->ctx; + kctx.u.perf_counter.type = ctx->u.perf_counter.type; + kctx.u.perf_counter.config = ctx->u.perf_counter.config; + strncpy(kctx.u.perf_counter.name, ctx->u.perf_counter.name, + LTTNG_SYMBOL_NAME_LEN); + kctx.u.perf_counter.name[LTTNG_SYMBOL_NAME_LEN - 1] = '\0'; if (strlen(channel_name) == 0) { - ret = add_kctx_all_channels(ksession, kctx, event_name); + ret = add_kctx_all_channels(ksession, &kctx, event_name); if (ret != LTTCOMM_OK) { goto error; } @@ -171,7 +180,7 @@ int add_kernel_context(struct ltt_kernel_session *ksession, goto error; } - ret = add_kctx_to_channel(kctx, kchan, event_name); + ret = add_kctx_to_channel(&kctx, kchan, event_name); if (ret != LTTCOMM_OK) { goto error; }