X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=src%2Fbin%2Flttng-sessiond%2Fcontext.c;h=b5345728a6a954b5bbe78c76f1ea9d4b7796c923;hb=9197c5c48e2d1db4c2f9318bbf0af0af9918fdc8;hp=0144f78248ee8c908077be0ec3b2f9aa66add057;hpb=db7586006bc1a2b9057a2c108bf1e7d20fd6903f;p=lttng-tools.git diff --git a/src/bin/lttng-sessiond/context.c b/src/bin/lttng-sessiond/context.c index 0144f7824..b5345728a 100644 --- a/src/bin/lttng-sessiond/context.c +++ b/src/bin/lttng-sessiond/context.c @@ -174,7 +174,7 @@ static int add_uctx_to_channel(struct ltt_ust_session *usess, int domain, } break; default: - ret = LTTCOMM_NOT_IMPLEMENTED; + ret = LTTCOMM_UND; goto error; } @@ -213,7 +213,7 @@ static int add_uctx_to_event(struct ltt_ust_session *usess, int domain, } break; default: - ret = LTTCOMM_NOT_IMPLEMENTED; + ret = LTTCOMM_UND; goto error; } @@ -239,7 +239,41 @@ int context_kernel_add(struct ltt_kernel_session *ksession, struct lttng_kernel_context kctx; /* Setup kernel context structure */ - kctx.ctx = ctx->ctx; + switch (ctx->ctx) { + case LTTNG_EVENT_CONTEXT_PID: + kctx.ctx = LTTNG_KERNEL_CONTEXT_PID; + break; + case LTTNG_EVENT_CONTEXT_PERF_COUNTER: + kctx.ctx = LTTNG_KERNEL_CONTEXT_PERF_COUNTER; + break; + case LTTNG_EVENT_CONTEXT_PROCNAME: + kctx.ctx = LTTNG_KERNEL_CONTEXT_PROCNAME; + break; + case LTTNG_EVENT_CONTEXT_PRIO: + kctx.ctx = LTTNG_KERNEL_CONTEXT_PRIO; + break; + case LTTNG_EVENT_CONTEXT_NICE: + kctx.ctx = LTTNG_KERNEL_CONTEXT_NICE; + break; + case LTTNG_EVENT_CONTEXT_VPID: + kctx.ctx = LTTNG_KERNEL_CONTEXT_VPID; + break; + case LTTNG_EVENT_CONTEXT_TID: + kctx.ctx = LTTNG_KERNEL_CONTEXT_TID; + break; + case LTTNG_EVENT_CONTEXT_VTID: + kctx.ctx = LTTNG_KERNEL_CONTEXT_VTID; + break; + case LTTNG_EVENT_CONTEXT_PPID: + kctx.ctx = LTTNG_KERNEL_CONTEXT_PPID; + break; + case LTTNG_EVENT_CONTEXT_VPPID: + kctx.ctx = LTTNG_KERNEL_CONTEXT_VPPID; + break; + default: + return LTTCOMM_KERN_CONTEXT_FAIL; + } + 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, @@ -292,11 +326,13 @@ int context_ust_add(struct ltt_ust_session *usess, int domain, case LTTNG_DOMAIN_UST: chan_ht = usess->domain_global.channels; break; +#if 0 case LTTNG_DOMAIN_UST_EXEC_NAME: case LTTNG_DOMAIN_UST_PID: case LTTNG_DOMAIN_UST_PID_FOLLOW_CHILDREN: +#endif default: - ret = LTTCOMM_NOT_IMPLEMENTED; + ret = LTTCOMM_UND; goto error; }