Small fix to lttng list session
[lttng-tools.git] / src / bin / lttng-sessiond / main.c
index 2aa93e63e915d8e0b03357f815ad7c3f3d13f766..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_RANGE:
+                       tmp[i].loglevel_type = LTTNG_EVENT_LOGLEVEL_RANGE;
                        break;
-               case LTTNG_UST_LOGLEVEL_ONLY:
-                       tmp[i].type = LTTNG_EVENT_LOGLEVEL_ONLY;
+               case LTTNG_UST_LOGLEVEL_SINGLE:
+                       tmp[i].loglevel_type = LTTNG_EVENT_LOGLEVEL_SINGLE;
                        break;
                }
                i++;
@@ -3302,7 +3310,6 @@ static int process_client_msg(struct command_ctx *cmd_ctx)
                ret = cmd_disable_event(cmd_ctx->session, cmd_ctx->lsm->domain.type,
                                cmd_ctx->lsm->u.disable.channel_name,
                                cmd_ctx->lsm->u.disable.name);
-               ret = LTTCOMM_OK;
                break;
        }
        case LTTNG_DISABLE_ALL_EVENT:
@@ -3470,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();
@@ -3898,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.025752 seconds and 4 git commands to generate.