Small fix to lttng list session
[lttng-tools.git] / src / bin / lttng-sessiond / main.c
index e990c34843f7eba9d21d0f2df5e8d43dbc750882..6ae374483a428019721591fc012924044eb93758 100644 (file)
@@ -769,12 +769,18 @@ static void update_ust_app(int app_sock)
 {
        struct ltt_session *sess, *stmp;
 
+       session_lock_list();
+
        /* For all tracing session(s) */
        cds_list_for_each_entry_safe(sess, stmp, &session_list_ptr->head, list) {
+               session_lock(sess);
                if (sess->ust_session) {
                        ust_app_global_update(sess->ust_session, app_sock);
                }
+               session_unlock(sess);
        }
+
+       session_unlock_list();
 }
 
 /*
@@ -2032,14 +2038,16 @@ static int list_lttng_ust_global_events(char *channel_name,
                        tmp[i].type = LTTNG_EVENT_FUNCTION;
                        break;
                }
-               strncpy(tmp[i].loglevel, uevent->attr.loglevel, LTTNG_SYMBOL_NAME_LEN);
-               tmp[i].loglevel[LTTNG_SYMBOL_NAME_LEN - 1] = '\0';
+               tmp[i].loglevel = uevent->attr.loglevel;
                switch (uevent->attr.loglevel_type) {
-               case LTTNG_UST_LOGLEVEL:
-                       tmp[i].type = LTTNG_EVENT_LOGLEVEL;
+               case LTTNG_UST_LOGLEVEL_ALL:
+                       tmp[i].loglevel_type = LTTNG_EVENT_LOGLEVEL_ALL;
                        break;
-               case LTTNG_UST_LOGLEVEL_ONLY:
-                       tmp[i].type = LTTNG_EVENT_LOGLEVEL_ONLY;
+               case LTTNG_UST_LOGLEVEL_RANGE:
+                       tmp[i].loglevel_type = LTTNG_EVENT_LOGLEVEL_RANGE;
+                       break;
+               case LTTNG_UST_LOGLEVEL_SINGLE:
+                       tmp[i].loglevel_type = LTTNG_EVENT_LOGLEVEL_SINGLE;
                        break;
                }
                i++;
@@ -3469,11 +3477,7 @@ static int process_client_msg(struct command_ctx *cmd_ctx)
 
                session_lock_list();
                nr_sessions = lttng_sessions_count(cmd_ctx->creds.uid, cmd_ctx->creds.gid);
-               if (nr_sessions == 0) {
-                       ret = LTTCOMM_NO_SESSION;
-                       session_unlock_list();
-                       goto error;
-               }
+
                ret = setup_lttng_msg(cmd_ctx, sizeof(struct lttng_session) * nr_sessions);
                if (ret < 0) {
                        session_unlock_list();
@@ -3897,17 +3901,12 @@ end:
  */
 static int check_existing_daemon(void)
 {
-       if (access(client_unix_sock_path, F_OK) < 0 &&
-                       access(apps_unix_sock_path, F_OK) < 0) {
-               return 0;
-       }
-
        /* Is there anybody out there ? */
        if (lttng_session_daemon_alive()) {
                return -EEXIST;
-       } else {
-               return 0;
        }
+
+       return 0;
 }
 
 /*
This page took 0.025429 seconds and 4 git commands to generate.