X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fbin%2Flttng-sessiond%2Fcmd.cpp;h=9ade60798692c112451e13f9b24d045e9a98a6cf;hb=c10f9cdd994258358bb3766c2e92dab71e4ceef2;hp=0627ba5c8bd5f83ca62d9403cddea283a2ce6f8f;hpb=b2d6883965b19c6b6cb47acac952a7ab3de88c11;p=lttng-tools.git diff --git a/src/bin/lttng-sessiond/cmd.cpp b/src/bin/lttng-sessiond/cmd.cpp index 0627ba5c8..9ade60798 100644 --- a/src/bin/lttng-sessiond/cmd.cpp +++ b/src/bin/lttng-sessiond/cmd.cpp @@ -387,7 +387,7 @@ static enum lttng_error_code list_lttng_ust_global_events(char *channel_name, node = lttng_ht_iter_get_node_str(&iter); if (node == NULL) { ret_code = LTTNG_ERR_UST_CHAN_NOT_FOUND; - goto end; + goto error; } uchan = caa_container_of(&node->node, struct ltt_ust_channel, node.node); @@ -420,14 +420,14 @@ static enum lttng_error_code list_lttng_ust_global_events(char *channel_name, tmp_event = lttng_event_create(); if (!tmp_event) { ret_code = LTTNG_ERR_NOMEM; - goto end; + goto error; } if (lttng_strncpy(tmp_event->name, uevent->attr.name, LTTNG_SYMBOL_NAME_LEN)) { ret_code = LTTNG_ERR_FATAL; lttng_event_destroy(tmp_event); - goto end; + goto error; } tmp_event->name[LTTNG_SYMBOL_NAME_LEN - 1] = '\0'; @@ -917,7 +917,6 @@ relayd_comm_error: * Returns LTTNG_OK, or an LTTng error code on failure. */ static enum lttng_error_code send_consumer_relayd_sockets( - enum lttng_domain_type domain, unsigned int session_id, struct consumer_output *consumer, struct consumer_socket *sock, const char *session_name, const char *hostname, const char *base_path, int session_live_timer, @@ -998,7 +997,7 @@ int cmd_setup_relayd(struct ltt_session *session) cds_lfht_for_each_entry(usess->consumer->socks->ht, &iter.iter, socket, node.node) { pthread_mutex_lock(socket->lock); - ret = send_consumer_relayd_sockets(LTTNG_DOMAIN_UST, session->id, + ret = send_consumer_relayd_sockets(session->id, usess->consumer, socket, session->name, session->hostname, session->base_path, @@ -1026,7 +1025,7 @@ int cmd_setup_relayd(struct ltt_session *session) cds_lfht_for_each_entry(ksess->consumer->socks->ht, &iter.iter, socket, node.node) { pthread_mutex_lock(socket->lock); - ret = send_consumer_relayd_sockets(LTTNG_DOMAIN_KERNEL, session->id, + ret = send_consumer_relayd_sockets(session->id, ksess->consumer, socket, session->name, session->hostname, session->base_path, @@ -2818,7 +2817,7 @@ int cmd_start_trace(struct ltt_session *session) */ session->rotated_after_last_stop = false; - if (session->rotate_timer_period) { + if (session->rotate_timer_period && !session->rotation_schedule_timer_enabled) { int int_ret = timer_session_rotation_schedule_timer_start( session, session->rotate_timer_period); @@ -3765,8 +3764,8 @@ enum lttng_error_code cmd_list_channels(enum lttng_domain_type domain, channel = trace_ust_channel_to_lttng_channel(uchan); if (!channel) { - ret = LTTNG_ERR_NOMEM; - break; + ret_code = LTTNG_ERR_NOMEM; + goto end; } extended = (struct lttng_channel_extended *) @@ -3777,7 +3776,7 @@ enum lttng_error_code cmd_list_channels(enum lttng_domain_type domain, if (ret < 0) { lttng_channel_destroy(channel); ret_code = LTTNG_ERR_UNK; - break; + goto end; } extended->discarded_events = discarded_events; @@ -3788,11 +3787,12 @@ enum lttng_error_code cmd_list_channels(enum lttng_domain_type domain, if (ret) { ERR("Failed to serialize lttng_channel: channel name = '%s'", channel->name); + lttng_channel_destroy(channel); ret_code = LTTNG_ERR_UNK; - ret = -1; - break; + goto end; } + lttng_channel_destroy(channel); i++; } rcu_read_unlock(); @@ -3830,7 +3830,7 @@ enum lttng_error_code cmd_list_events(enum lttng_domain_type domain, enum lttng_error_code ret_code = LTTNG_OK; struct lttcomm_list_command_header reply_command_header = {}; size_t reply_command_header_offset; - unsigned int nb_events; + unsigned int nb_events = 0; assert(reply_payload); @@ -5037,7 +5037,7 @@ static enum lttng_error_code set_relayd_for_snapshot( cds_lfht_for_each_entry(output->socks->ht, &iter.iter, socket, node.node) { pthread_mutex_lock(socket->lock); - status = send_consumer_relayd_sockets(LTTNG_DOMAIN_NONE, session->id, + status = send_consumer_relayd_sockets(session->id, output, socket, session->name, session->hostname, base_path, @@ -5066,7 +5066,7 @@ static enum lttng_error_code record_kernel_snapshot( struct ltt_kernel_session *ksess, const struct consumer_output *output, const struct ltt_session *session, - int wait, uint64_t nb_packets_per_stream) + uint64_t nb_packets_per_stream) { enum lttng_error_code status; @@ -5075,7 +5075,7 @@ static enum lttng_error_code record_kernel_snapshot( LTTNG_ASSERT(session); status = kernel_snapshot_record( - ksess, output, wait, nb_packets_per_stream); + ksess, output, nb_packets_per_stream); return status; } @@ -5087,7 +5087,7 @@ static enum lttng_error_code record_kernel_snapshot( static enum lttng_error_code record_ust_snapshot(struct ltt_ust_session *usess, const struct consumer_output *output, const struct ltt_session *session, - int wait, uint64_t nb_packets_per_stream) + uint64_t nb_packets_per_stream) { enum lttng_error_code status; @@ -5096,7 +5096,7 @@ static enum lttng_error_code record_ust_snapshot(struct ltt_ust_session *usess, LTTNG_ASSERT(session); status = ust_app_snapshot_record( - usess, output, wait, nb_packets_per_stream); + usess, output, nb_packets_per_stream); return status; } @@ -5190,7 +5190,7 @@ int64_t get_session_nb_packets_per_stream(const struct ltt_session *session, static enum lttng_error_code snapshot_record(struct ltt_session *session, - const struct snapshot_output *snapshot_output, int wait) + const struct snapshot_output *snapshot_output) { int64_t nb_packets_per_stream; char snapshot_chunk_name[LTTNG_NAME_MAX]; @@ -5310,7 +5310,7 @@ enum lttng_error_code snapshot_record(struct ltt_session *session, if (session->kernel_session) { ret_code = record_kernel_snapshot(session->kernel_session, snapshot_kernel_consumer_output, session, - wait, nb_packets_per_stream); + nb_packets_per_stream); if (ret_code != LTTNG_OK) { goto error_close_trace_chunk; } @@ -5319,7 +5319,7 @@ enum lttng_error_code snapshot_record(struct ltt_session *session, if (session->ust_session) { ret_code = record_ust_snapshot(session->ust_session, snapshot_ust_consumer_output, session, - wait, nb_packets_per_stream); + nb_packets_per_stream); if (ret_code != LTTNG_OK) { goto error_close_trace_chunk; } @@ -5367,7 +5367,8 @@ error: * Return LTTNG_OK on success or else a LTTNG_ERR code. */ int cmd_snapshot_record(struct ltt_session *session, - const struct lttng_snapshot_output *output, int wait) + const struct lttng_snapshot_output *output, + int wait __attribute__((unused))) { enum lttng_error_code cmd_ret = LTTNG_OK; int ret; @@ -5429,7 +5430,7 @@ int cmd_snapshot_record(struct ltt_session *session, /* Use the global datetime */ memcpy(tmp_output->datetime, datetime, sizeof(datetime)); - cmd_ret = snapshot_record(session, tmp_output, wait); + cmd_ret = snapshot_record(session, tmp_output); if (cmd_ret != LTTNG_OK) { goto error; } @@ -5469,7 +5470,7 @@ int cmd_snapshot_record(struct ltt_session *session, } } - cmd_ret = snapshot_record(session, &output_copy, wait); + cmd_ret = snapshot_record(session, &output_copy); if (cmd_ret != LTTNG_OK) { rcu_read_unlock(); goto error;