Fix: sessiond: previously created channel cannot be enabled
[lttng-tools.git] / src / bin / lttng-sessiond / cmd.c
index 9ae4d1974293a9197362f92b244eaca8f3543aff..2c0fa462d38fe63a728679b0dc3072ae6e88502a 100644 (file)
@@ -8,7 +8,6 @@
 
 
 #define _LGPL_SOURCE
-#include <assert.h>
 #include <inttypes.h>
 #include <stdio.h>
 #include <sys/stat.h>
@@ -133,8 +132,8 @@ static int build_network_session_path(char *dst, size_t size,
        struct lttng_uri *kuri = NULL, *uuri = NULL, *uri = NULL;
        char tmp_uurl[PATH_MAX], tmp_urls[PATH_MAX];
 
-       assert(session);
-       assert(dst);
+       LTTNG_ASSERT(session);
+       LTTNG_ASSERT(dst);
 
        memset(tmp_urls, 0, sizeof(tmp_urls));
        memset(tmp_uurl, 0, sizeof(tmp_uurl));
@@ -252,8 +251,8 @@ static int get_ust_runtime_stats(struct ltt_session *session,
        }
 
        usess = session->ust_session;
-       assert(discarded_events);
-       assert(lost_packets);
+       LTTNG_ASSERT(discarded_events);
+       LTTNG_ASSERT(lost_packets);
 
        if (!usess || !session->has_been_started) {
                *discarded_events = 0;
@@ -282,7 +281,7 @@ static int get_ust_runtime_stats(struct ltt_session *session,
                *lost_packets += uchan->per_pid_closed_app_lost;
        } else {
                ERR("Unsupported buffer type");
-               assert(0);
+               abort();
                ret = -1;
                goto end;
        }
@@ -370,7 +369,7 @@ static ssize_t list_lttng_channels(enum lttng_domain_type domain,
                                 * LTTNG_UST_MMAP is the only supported UST
                                 * output mode.
                                 */
-                               assert(0);
+                               abort();
                                break;
                        }
 
@@ -483,7 +482,7 @@ static int list_lttng_agent_events(struct agent *agt,
        const struct agent_event *agent_event;
        struct lttng_ht_iter iter;
 
-       assert(agt);
+       LTTNG_ASSERT(agt);
 
        DBG3("Listing agent events");
 
@@ -711,7 +710,7 @@ static int list_lttng_kernel_events(char *channel_name,
                case LTTNG_KERNEL_ABI_ALL:
                        /* fall-through. */
                default:
-                       assert(0);
+                       abort();
                        break;
                }
 
@@ -753,7 +752,7 @@ static enum lttng_error_code add_uri_to_consumer(
        int ret;
        enum lttng_error_code ret_code = LTTNG_OK;
 
-       assert(uri);
+       LTTNG_ASSERT(uri);
 
        if (consumer == NULL) {
                DBG("No consumer detected. Don't add URI. Stopping.");
@@ -853,7 +852,7 @@ static int init_kernel_tracing(struct ltt_kernel_session *session)
        struct lttng_ht_iter iter;
        struct consumer_socket *socket;
 
-       assert(session);
+       LTTNG_ASSERT(session);
 
        rcu_read_lock();
 
@@ -987,7 +986,7 @@ static enum lttng_error_code send_consumer_relayd_socket(
        if (status != LTTNG_OK) {
                goto relayd_comm_error;
        }
-       assert(rsock);
+       LTTNG_ASSERT(rsock);
 
        /* Set the network sequence index if not set. */
        if (consumer->net_seq_index == (uint64_t) -1ULL) {
@@ -1059,8 +1058,8 @@ static enum lttng_error_code send_consumer_relayd_sockets(
 {
        enum lttng_error_code status = LTTNG_OK;
 
-       assert(consumer);
-       assert(sock);
+       LTTNG_ASSERT(consumer);
+       LTTNG_ASSERT(sock);
 
        /* Sending control relayd socket. */
        if (!sock->control_sock_sent) {
@@ -1104,7 +1103,7 @@ int cmd_setup_relayd(struct ltt_session *session)
        struct lttng_ht_iter iter;
        LTTNG_OPTIONAL(uint64_t) current_chunk_id = {};
 
-       assert(session);
+       LTTNG_ASSERT(session);
 
        usess = session->ust_session;
        ksess = session->kernel_session;
@@ -1369,9 +1368,9 @@ int cmd_enable_channel(struct ltt_session *session,
        size_t len;
        struct lttng_channel attr;
 
-       assert(session);
-       assert(_attr);
-       assert(domain);
+       LTTNG_ASSERT(session);
+       LTTNG_ASSERT(_attr);
+       LTTNG_ASSERT(domain);
 
        attr = *_attr;
        len = lttng_strnlen(attr.name, sizeof(attr.name));
@@ -1387,15 +1386,6 @@ int cmd_enable_channel(struct ltt_session *session,
 
        rcu_read_lock();
 
-       /*
-        * Don't try to enable a channel if the session has been started at
-        * some point in time before. The tracer does not allow it.
-        */
-       if (session->has_been_started) {
-               ret = LTTNG_ERR_TRACE_ALREADY_STARTED;
-               goto error;
-       }
-
        /*
         * If the session is a live session, remove the switch timer, the
         * live timer does the same thing but sends also synchronisation
@@ -1444,6 +1434,15 @@ int cmd_enable_channel(struct ltt_session *session,
                kchan = trace_kernel_get_channel_by_name(attr.name,
                                session->kernel_session);
                if (kchan == NULL) {
+                       /*
+                        * Don't try to create a channel if the session has been started at
+                        * some point in time before. The tracer does not allow it.
+                        */
+                       if (session->has_been_started) {
+                               ret = LTTNG_ERR_TRACE_ALREADY_STARTED;
+                               goto error;
+                       }
+
                        if (session->snapshot.nb_output > 0 ||
                                        session->snapshot_mode) {
                                /* Enforce mmap output for snapshot sessions. */
@@ -1503,6 +1502,15 @@ int cmd_enable_channel(struct ltt_session *session,
 
                uchan = trace_ust_find_channel_by_name(chan_ht, attr.name);
                if (uchan == NULL) {
+                       /*
+                        * Don't try to create a channel if the session has been started at
+                        * some point in time before. The tracer does not allow it.
+                        */
+                       if (session->has_been_started) {
+                               ret = LTTNG_ERR_TRACE_ALREADY_STARTED;
+                               goto error;
+                       }
+
                        ret = channel_ust_create(usess, &attr, domain->buf_type);
                        if (attr.name[0] != '\0') {
                                usess->has_non_default_channel = 1;
@@ -1865,7 +1873,7 @@ int cmd_disable_event(struct ltt_session *session,
                struct agent *agt;
                struct ltt_ust_session *usess = session->ust_session;
 
-               assert(usess);
+               LTTNG_ASSERT(usess);
 
                switch (event->type) {
                case LTTNG_EVENT_ALL:
@@ -1934,7 +1942,7 @@ int cmd_add_context(struct ltt_session *session, enum lttng_domain_type domain,
 
        switch (domain) {
        case LTTNG_DOMAIN_KERNEL:
-               assert(session->kernel_session);
+               LTTNG_ASSERT(session->kernel_session);
 
                if (session->kernel_session->channel_count == 0) {
                        /* Create default channel */
@@ -1978,7 +1986,7 @@ int cmd_add_context(struct ltt_session *session, enum lttng_domain_type domain,
                struct ltt_ust_session *usess = session->ust_session;
                unsigned int chan_count;
 
-               assert(usess);
+               LTTNG_ASSERT(usess);
 
                chan_count = lttng_ht_get_count(usess->domain_global.channels);
                if (chan_count == 0) {
@@ -2023,7 +2031,7 @@ error:
                        trace_kernel_get_channel_by_name(DEFAULT_CHANNEL_NAME,
                                        session->kernel_session);
                /* Created previously, this should NOT fail. */
-               assert(kchan);
+               LTTNG_ASSERT(kchan);
                kernel_destroy_channel(kchan);
        }
 
@@ -2033,7 +2041,7 @@ error:
                                        session->ust_session->domain_global.channels,
                                        DEFAULT_CHANNEL_NAME);
                /* Created previously, this should NOT fail. */
-               assert(uchan);
+               LTTNG_ASSERT(uchan);
                /* Remove from the channel list of the session. */
                trace_ust_delete_channel(session->ust_session->domain_global.channels,
                                uchan);
@@ -2093,12 +2101,12 @@ static int _cmd_enable_event(struct ltt_session *session,
        int ret = 0, channel_created = 0;
        struct lttng_channel *attr = NULL;
 
-       assert(session);
-       assert(event);
-       assert(channel_name);
+       LTTNG_ASSERT(session);
+       LTTNG_ASSERT(event);
+       LTTNG_ASSERT(channel_name);
 
        /* If we have a filter, we must have its filter expression */
-       assert(!(!!filter_expression ^ !!filter));
+       LTTNG_ASSERT(!(!!filter_expression ^ !!filter));
 
        /* Normalize event name as a globbing pattern */
        strutils_normalize_star_glob_pattern(event->name);
@@ -2259,7 +2267,7 @@ static int _cmd_enable_event(struct ltt_session *session,
                struct ltt_ust_channel *uchan;
                struct ltt_ust_session *usess = session->ust_session;
 
-               assert(usess);
+               LTTNG_ASSERT(usess);
 
                /*
                 * If a non-default channel has been created in the
@@ -2296,7 +2304,7 @@ static int _cmd_enable_event(struct ltt_session *session,
                        /* Get the newly created channel reference back */
                        uchan = trace_ust_find_channel_by_name(
                                        usess->domain_global.channels, channel_name);
-                       assert(uchan);
+                       LTTNG_ASSERT(uchan);
                }
 
                if (uchan->domain != LTTNG_DOMAIN_UST && !internal_event) {
@@ -2348,7 +2356,7 @@ static int _cmd_enable_event(struct ltt_session *session,
                struct lttng_domain tmp_dom;
                struct ltt_ust_session *usess = session->ust_session;
 
-               assert(usess);
+               LTTNG_ASSERT(usess);
 
                if (!agent_tracing_is_enabled()) {
                        DBG("Attempted to enable an event in an agent domain but the agent thread is not running");
@@ -2399,7 +2407,7 @@ static int _cmd_enable_event(struct ltt_session *session,
                        break;
                default:
                        /* The switch/case we are in makes this impossible */
-                       assert(0);
+                       abort();
                }
 
                {
@@ -2605,7 +2613,7 @@ int cmd_start_trace(struct ltt_session *session)
        const bool session_cleared_after_last_stop =
                        session->cleared_after_last_stop;
 
-       assert(session);
+       LTTNG_ASSERT(session);
 
        /* Ease our life a bit ;) */
        ksession = session->kernel_session;
@@ -2664,7 +2672,7 @@ int cmd_start_trace(struct ltt_session *session)
                                ret = LTTNG_ERR_CREATE_DIR_FAIL;
                                goto error;
                        }
-                       assert(!session->current_trace_chunk);
+                       LTTNG_ASSERT(!session->current_trace_chunk);
                        ret = session_set_trace_chunk(session, trace_chunk,
                                        NULL);
                        lttng_trace_chunk_put(trace_chunk);
@@ -2766,7 +2774,7 @@ int cmd_stop_trace(struct ltt_session *session)
        struct ltt_kernel_session *ksession;
        struct ltt_ust_session *usess;
 
-       assert(session);
+       LTTNG_ASSERT(session);
 
        DBG("Begin stop session \"%s\" (id %" PRIu64 ")", session->name, session->id);
        /* Short cut */
@@ -2851,9 +2859,9 @@ int cmd_set_consumer_uri(struct ltt_session *session, size_t nb_uri,
        struct ltt_kernel_session *ksess = session->kernel_session;
        struct ltt_ust_session *usess = session->ust_session;
 
-       assert(session);
-       assert(uris);
-       assert(nb_uri > 0);
+       LTTNG_ASSERT(session);
+       LTTNG_ASSERT(uris);
+       LTTNG_ASSERT(nb_uri > 0);
 
        /* Can't set consumer URI if the session is active. */
        if (session->active) {
@@ -3241,6 +3249,7 @@ void cmd_destroy_session_reply(const struct ltt_session *session,
        payload_size_before_location = payload.size;
        comm_ret = lttng_trace_archive_location_serialize(location,
                        &payload);
+       lttng_trace_archive_location_put(location);
        if (comm_ret < 0) {
                ERR("Failed to serialize the location of the trace archive produced during the destruction of session \"%s\"",
                                session->name);
@@ -3288,7 +3297,7 @@ int cmd_destroy_session(struct ltt_session *session,
        }
 
        /* Safety net */
-       assert(session);
+       LTTNG_ASSERT(session);
 
        DBG("Begin destroy session %s (id %" PRIu64 ")", session->name,
                        session->id);
@@ -3411,7 +3420,7 @@ int cmd_destroy_session(struct ltt_session *session,
                ret = lttng_strncpy(destroy_completion_handler.shm_path,
                                session->shm_path,
                                sizeof(destroy_completion_handler.shm_path));
-               assert(!ret);
+               LTTNG_ASSERT(!ret);
        }
 
        /*
@@ -3447,16 +3456,16 @@ int cmd_register_consumer(struct ltt_session *session,
        int ret, sock;
        struct consumer_socket *socket = NULL;
 
-       assert(session);
-       assert(cdata);
-       assert(sock_path);
+       LTTNG_ASSERT(session);
+       LTTNG_ASSERT(cdata);
+       LTTNG_ASSERT(sock_path);
 
        switch (domain) {
        case LTTNG_DOMAIN_KERNEL:
        {
                struct ltt_kernel_session *ksess = session->kernel_session;
 
-               assert(ksess);
+               LTTNG_ASSERT(ksess);
 
                /* Can't register a consumer if there is already one */
                if (ksess->consumer_fds_sent != 0) {
@@ -3801,7 +3810,7 @@ int cmd_data_pending(struct ltt_session *session)
        struct ltt_kernel_session *ksess = session->kernel_session;
        struct ltt_ust_session *usess = session->ust_session;
 
-       assert(session);
+       LTTNG_ASSERT(session);
 
        DBG("Data pending for session %s", session->name);
 
@@ -3867,8 +3876,8 @@ int cmd_snapshot_add_output(struct ltt_session *session,
        int ret;
        struct snapshot_output *new_output;
 
-       assert(session);
-       assert(output);
+       LTTNG_ASSERT(session);
+       LTTNG_ASSERT(output);
 
        DBG("Cmd snapshot add output for session %s", session->name);
 
@@ -3935,8 +3944,8 @@ int cmd_snapshot_del_output(struct ltt_session *session,
        int ret;
        struct snapshot_output *sout = NULL;
 
-       assert(session);
-       assert(output);
+       LTTNG_ASSERT(session);
+       LTTNG_ASSERT(output);
 
        rcu_read_lock();
 
@@ -3987,8 +3996,8 @@ ssize_t cmd_snapshot_list_outputs(struct ltt_session *session,
        struct lttng_ht_iter iter;
        struct snapshot_output *output;
 
-       assert(session);
-       assert(outputs);
+       LTTNG_ASSERT(session);
+       LTTNG_ASSERT(outputs);
 
        DBG("Cmd snapshot list outputs for session %s", session->name);
 
@@ -4016,7 +4025,7 @@ ssize_t cmd_snapshot_list_outputs(struct ltt_session *session,
        rcu_read_lock();
        cds_lfht_for_each_entry(session->snapshot.output_ht->ht, &iter.iter,
                        output, node.node) {
-               assert(output->consumer);
+               LTTNG_ASSERT(output->consumer);
                list[idx].id = output->id;
                list[idx].max_size = output->max_size;
                if (lttng_strncpy(list[idx].name, output->name,
@@ -4072,7 +4081,7 @@ int check_regenerate_metadata_support(struct ltt_session *session)
 {
        int ret;
 
-       assert(session);
+       LTTNG_ASSERT(session);
 
        if (session->live_timer != 0) {
                ret = LTTNG_ERR_LIVE_SESSION;
@@ -4090,7 +4099,7 @@ int check_regenerate_metadata_support(struct ltt_session *session)
                        ret = LTTNG_ERR_PER_PID_SESSION;
                        goto end;
                default:
-                       assert(0);
+                       abort();
                        ret = LTTNG_ERR_UNK;
                        goto end;
                }
@@ -4212,7 +4221,7 @@ int cmd_regenerate_metadata(struct ltt_session *session)
 {
        int ret;
 
-       assert(session);
+       LTTNG_ASSERT(session);
 
        ret = check_regenerate_metadata_support(session);
        if (ret) {
@@ -4253,7 +4262,7 @@ int cmd_regenerate_statedump(struct ltt_session *session)
 {
        int ret;
 
-       assert(session);
+       LTTNG_ASSERT(session);
 
        if (!session->active) {
                ret = LTTNG_ERR_SESSION_NOT_STARTED;
@@ -4312,10 +4321,10 @@ enum lttng_error_code synchronize_tracer_notifier_register(
                                        trigger);
 
        trigger_status = lttng_trigger_get_owner_uid(trigger, &trigger_owner);
-       assert(trigger_status == LTTNG_TRIGGER_STATUS_OK);
+       LTTNG_ASSERT(trigger_status == LTTNG_TRIGGER_STATUS_OK);
 
-       assert(condition);
-       assert(lttng_condition_get_type(condition) ==
+       LTTNG_ASSERT(condition);
+       LTTNG_ASSERT(lttng_condition_get_type(condition) ==
                        LTTNG_CONDITION_TYPE_EVENT_RULE_MATCHES);
 
        trigger_status = lttng_trigger_get_name(trigger, &trigger_name);
@@ -4400,7 +4409,7 @@ enum lttng_error_code cmd_register_trigger(const struct lttng_credentials *cmd_c
 
        trigger_status = lttng_trigger_get_owner_uid(
                trigger, &trigger_owner);
-       assert(trigger_status == LTTNG_TRIGGER_STATUS_OK);
+       LTTNG_ASSERT(trigger_status == LTTNG_TRIGGER_STATUS_OK);
 
        DBG("Running register trigger command: trigger name = '%s', trigger owner uid = %d, command creds uid = %d",
                        trigger_name, (int) trigger_owner,
@@ -4497,8 +4506,8 @@ enum lttng_error_code synchronize_tracer_notifier_unregister(
                        lttng_trigger_get_underlying_domain_type_restriction(
                                        trigger);
 
-       assert(condition);
-       assert(lttng_condition_get_type(condition) ==
+       LTTNG_ASSERT(condition);
+       LTTNG_ASSERT(lttng_condition_get_type(condition) ==
                        LTTNG_CONDITION_TYPE_EVENT_RULE_MATCHES);
 
        session_lock_list();
@@ -4525,7 +4534,7 @@ enum lttng_error_code synchronize_tracer_notifier_unregister(
                 * This trigger was never registered in the first place. Calling
                 * this function under those circumstances is an internal error.
                 */
-               assert(agt);
+               LTTNG_ASSERT(agt);
                ret_code = trigger_agent_disable(trigger, agt);
                if (ret_code != LTTNG_OK) {
                        goto end_unlock_session_list;
@@ -4558,7 +4567,7 @@ enum lttng_error_code cmd_unregister_trigger(const struct lttng_credentials *cmd
        trigger_status = lttng_trigger_get_name(trigger, &trigger_name);
        trigger_name = trigger_status == LTTNG_TRIGGER_STATUS_OK ? trigger_name : "(anonymous)";
        trigger_status = lttng_trigger_get_owner_uid(trigger, &trigger_owner);
-       assert(trigger_status == LTTNG_TRIGGER_STATUS_OK);
+       LTTNG_ASSERT(trigger_status == LTTNG_TRIGGER_STATUS_OK);
 
        DBG("Running unregister trigger command: trigger name = '%s', trigger owner uid = %d, command creds uid = %d",
                        trigger_name, (int) trigger_owner,
@@ -4590,7 +4599,7 @@ enum lttng_error_code cmd_unregister_trigger(const struct lttng_credentials *cmd
                goto end;
        }
 
-       assert(sessiond_trigger);
+       LTTNG_ASSERT(sessiond_trigger);
 
        /*
         * From this point on, no matter what, consider the trigger
@@ -4631,11 +4640,11 @@ end:
        return ret_code;
 }
 
-int cmd_list_triggers(struct command_ctx *cmd_ctx,
+enum lttng_error_code cmd_list_triggers(struct command_ctx *cmd_ctx,
                struct notification_thread_handle *notification_thread,
                struct lttng_triggers **return_triggers)
 {
-       int ret = 0;
+       int ret;
        enum lttng_error_code ret_code;
        struct lttng_triggers *triggers = NULL;
 
@@ -4643,16 +4652,21 @@ int cmd_list_triggers(struct command_ctx *cmd_ctx,
        ret_code = notification_thread_command_list_triggers(
                        notification_thread, cmd_ctx->creds.uid, &triggers);
        if (ret_code != LTTNG_OK) {
-               ret = ret_code;
+               goto end;
+       }
+
+       ret = lttng_triggers_remove_hidden_triggers(triggers);
+       if (ret) {
+               ret_code = LTTNG_ERR_UNK;
                goto end;
        }
 
        *return_triggers = triggers;
        triggers = NULL;
-       ret = LTTNG_OK;
+       ret_code = LTTNG_OK;
 end:
        lttng_triggers_destroy(triggers);
-       return ret;
+       return ret_code;
 }
 
 enum lttng_error_code cmd_execute_error_query(const struct lttng_credentials *cmd_creds,
@@ -4662,7 +4676,7 @@ enum lttng_error_code cmd_execute_error_query(const struct lttng_credentials *cm
 {
        enum lttng_error_code ret_code;
        const struct lttng_trigger *query_target_trigger;
-       struct lttng_action *query_target_action = NULL;
+       const struct lttng_action *query_target_action = NULL;
        struct lttng_trigger *matching_trigger = NULL;
        const char *trigger_name;
        uid_t trigger_owner;
@@ -4673,6 +4687,10 @@ enum lttng_error_code cmd_execute_error_query(const struct lttng_credentials *cm
        case LTTNG_ERROR_QUERY_TARGET_TYPE_TRIGGER:
                query_target_trigger = lttng_error_query_trigger_borrow_target(query);
                break;
+       case LTTNG_ERROR_QUERY_TARGET_TYPE_CONDITION:
+               query_target_trigger =
+                               lttng_error_query_condition_borrow_target(query);
+               break;
        case LTTNG_ERROR_QUERY_TARGET_TYPE_ACTION:
                query_target_trigger = lttng_error_query_action_borrow_trigger_target(
                                query);
@@ -4681,7 +4699,7 @@ enum lttng_error_code cmd_execute_error_query(const struct lttng_credentials *cm
                abort();
        }
 
-       assert(query_target_trigger);
+       LTTNG_ASSERT(query_target_trigger);
 
        ret_code = notification_thread_command_get_trigger(notification_thread,
                        query_target_trigger, &matching_trigger);
@@ -4705,7 +4723,7 @@ enum lttng_error_code cmd_execute_error_query(const struct lttng_credentials *cm
                        trigger_name : "(anonymous)";
        trigger_status = lttng_trigger_get_owner_uid(matching_trigger,
                        &trigger_owner);
-       assert(trigger_status == LTTNG_TRIGGER_STATUS_OK);
+       LTTNG_ASSERT(trigger_status == LTTNG_TRIGGER_STATUS_OK);
 
        results = lttng_error_query_results_create();
        if (!results) {
@@ -4748,6 +4766,21 @@ enum lttng_error_code cmd_execute_error_query(const struct lttng_credentials *cm
                }
 
                break;
+       case LTTNG_ERROR_QUERY_TARGET_TYPE_CONDITION:
+       {
+               trigger_status = lttng_trigger_condition_add_error_results(
+                               matching_trigger, results);
+
+               switch (trigger_status) {
+               case LTTNG_TRIGGER_STATUS_OK:
+                       break;
+               default:
+                       ret_code = LTTNG_ERR_UNK;
+                       goto end;
+               }
+
+               break;
+       }
        case LTTNG_ERROR_QUERY_TARGET_TYPE_ACTION:
        {
                const enum lttng_action_status action_status =
@@ -4794,8 +4827,8 @@ static enum lttng_error_code set_relayd_for_snapshot(
        LTTNG_OPTIONAL(uint64_t) current_chunk_id = {};
        const char *base_path;
 
-       assert(output);
-       assert(session);
+       LTTNG_ASSERT(output);
+       LTTNG_ASSERT(session);
 
        DBG2("Set relayd object from snapshot output");
 
@@ -4870,9 +4903,9 @@ static enum lttng_error_code record_kernel_snapshot(
 {
        enum lttng_error_code status;
 
-       assert(ksess);
-       assert(output);
-       assert(session);
+       LTTNG_ASSERT(ksess);
+       LTTNG_ASSERT(output);
+       LTTNG_ASSERT(session);
 
        status = kernel_snapshot_record(
                        ksess, output, wait, nb_packets_per_stream);
@@ -4891,9 +4924,9 @@ static enum lttng_error_code record_ust_snapshot(struct ltt_ust_session *usess,
 {
        enum lttng_error_code status;
 
-       assert(usess);
-       assert(output);
-       assert(session);
+       LTTNG_ASSERT(usess);
+       LTTNG_ASSERT(output);
+       LTTNG_ASSERT(session);
 
        status = ust_app_snapshot_record(
                        usess, output, wait, nb_packets_per_stream);
@@ -5089,7 +5122,7 @@ enum lttng_error_code snapshot_record(struct ltt_session *session,
                ret_code = LTTNG_ERR_CREATE_DIR_FAIL;
                goto error;
        }
-       assert(!session->current_trace_chunk);
+       LTTNG_ASSERT(!session->current_trace_chunk);
        ret = session_set_trace_chunk(session, snapshot_trace_chunk, NULL);
        lttng_trace_chunk_put(snapshot_trace_chunk);
        snapshot_trace_chunk = NULL;
@@ -5172,8 +5205,8 @@ int cmd_snapshot_record(struct ltt_session *session,
        char datetime[16];
        struct snapshot_output *tmp_output = NULL;
 
-       assert(session);
-       assert(output);
+       LTTNG_ASSERT(session);
+       LTTNG_ASSERT(output);
 
        DBG("Cmd snapshot record for session %s", session->name);
 
@@ -5296,7 +5329,7 @@ int cmd_set_session_shm_path(struct ltt_session *session,
                const char *shm_path)
 {
        /* Safety net */
-       assert(session);
+       LTTNG_ASSERT(session);
 
        /*
         * Can only set shm path before session is started.
@@ -5334,7 +5367,7 @@ int cmd_rotate_session(struct ltt_session *session,
        bool failed_to_rotate = false;
        enum lttng_error_code rotation_fail_code = LTTNG_OK;
 
-       assert(session);
+       LTTNG_ASSERT(session);
 
        if (!session->has_been_started) {
                cmd_ret = LTTNG_ERR_START_SESSION_ONCE;
@@ -5452,7 +5485,7 @@ int cmd_rotate_session(struct ltt_session *session,
        session->rotation_state = LTTNG_ROTATION_STATE_ONGOING;
        chunk_status = lttng_trace_chunk_get_id(chunk_being_archived,
                        &ongoing_rotation_chunk_id);
-       assert(chunk_status == LTTNG_TRACE_CHUNK_STATUS_OK);
+       LTTNG_ASSERT(chunk_status == LTTNG_TRACE_CHUNK_STATUS_OK);
 
        ret = session_close_trace_chunk(session, chunk_being_archived,
                command, session->last_chunk_path);
@@ -5532,7 +5565,7 @@ int cmd_rotate_get_info(struct ltt_session *session,
                chunk_status = lttng_trace_chunk_get_id(
                                session->chunk_being_archived,
                                &chunk_id);
-               assert(chunk_status == LTTNG_TRACE_CHUNK_STATUS_OK);
+               LTTNG_ASSERT(chunk_status == LTTNG_TRACE_CHUNK_STATUS_OK);
 
                rotation_state = rotation_id == chunk_id ?
                                LTTNG_ROTATION_STATE_ONGOING :
@@ -5672,7 +5705,7 @@ int cmd_rotation_set_schedule(struct ltt_session *session,
        int ret;
        uint64_t *parameter_value;
 
-       assert(session);
+       LTTNG_ASSERT(session);
 
        DBG("Cmd rotate set schedule session %s", session->name);
 
This page took 0.03437 seconds and 4 git commands to generate.