From: Jérémie Galarneau Date: Wed, 2 Aug 2017 19:24:00 +0000 (-0400) Subject: Harmonize return code conventions in context handling X-Git-Tag: v2.11.0-rc1~454 X-Git-Url: https://git.liburcu.org/?a=commitdiff_plain;h=7682f30487cfe11af077c668193bb26f587a6081;p=lttng-tools.git Harmonize return code conventions in context handling --- diff --git a/src/bin/lttng-sessiond/context.c b/src/bin/lttng-sessiond/context.c index 1e68bd8bb..3c7c34df4 100644 --- a/src/bin/lttng-sessiond/context.c +++ b/src/bin/lttng-sessiond/context.c @@ -55,7 +55,7 @@ static int add_kctx_all_channels(struct ltt_kernel_session *ksession, kctx_copy = trace_kernel_copy_context(kctx); if (!kctx_copy) { PERROR("zmalloc ltt_kernel_context"); - ret = -ENOMEM; + ret = -LTTNG_ERR_NOMEM; goto error; } @@ -119,7 +119,7 @@ static int add_uctx_to_channel(struct ltt_ust_session *usess, /* Check if context is duplicate */ cds_list_for_each_entry(uctx, &uchan->ctx_list, list) { if (trace_ust_match_context(uctx, ctx)) { - ret = -EEXIST; + ret = LTTNG_ERR_UST_CONTEXT_EXIST; goto duplicate; } } @@ -140,7 +140,7 @@ static int add_uctx_to_channel(struct ltt_ust_session *usess, if (!agt) { agt = agent_create(domain); if (!agt) { - ret = LTTNG_ERR_NOMEM; + ret = -LTTNG_ERR_NOMEM; goto error; } agent_add(agt, usess->agents); @@ -165,7 +165,7 @@ static int add_uctx_to_channel(struct ltt_ust_session *usess, /* Create ltt UST context */ uctx = trace_ust_create_context(ctx); if (uctx == NULL) { - ret = -EINVAL; + ret = LTTNG_ERR_UST_CONTEXT_INVAL; goto error; } @@ -207,7 +207,7 @@ int context_kernel_add(struct ltt_kernel_session *ksession, kctx = trace_kernel_create_context(NULL); if (!kctx) { - ret = LTTNG_ERR_NOMEM; + ret = -LTTNG_ERR_NOMEM; goto error; } @@ -339,7 +339,7 @@ int context_ust_add(struct ltt_ust_session *usess, /* Add ctx all events, all channels */ cds_lfht_for_each_entry(chan_ht->ht, &iter.iter, uchan, node.node) { ret = add_uctx_to_channel(usess, domain, uchan, ctx); - if (ret < 0) { + if (ret) { ERR("Failed to add context to channel %s", uchan->name); continue; @@ -349,10 +349,10 @@ int context_ust_add(struct ltt_ust_session *usess, } switch (ret) { - case -EEXIST: - ret = LTTNG_ERR_UST_CONTEXT_EXIST; + case LTTNG_ERR_UST_CONTEXT_EXIST: break; case -ENOMEM: + case -LTTNG_ERR_NOMEM: ret = LTTNG_ERR_FATAL; break; case -EINVAL: @@ -362,7 +362,11 @@ int context_ust_add(struct ltt_ust_session *usess, ret = LTTNG_ERR_UNKNOWN_DOMAIN; break; default: - ret = LTTNG_OK; + if (ret != 0 && ret != LTTNG_OK) { + ret = ret > 0 ? ret : LTTNG_ERR_UNK; + } else { + ret = LTTNG_OK; + } break; } diff --git a/src/bin/lttng-sessiond/ust-app.c b/src/bin/lttng-sessiond/ust-app.c index eb0f83716..e79455b01 100644 --- a/src/bin/lttng-sessiond/ust-app.c +++ b/src/bin/lttng-sessiond/ust-app.c @@ -2365,7 +2365,7 @@ int create_ust_app_channel_context(struct ust_app_session *ua_sess, ua_ctx = alloc_ust_app_ctx(uctx); if (ua_ctx == NULL) { /* malloc failed */ - ret = -1; + ret = -ENOMEM; goto error; }