Increase possible verbose level for session daemon
[lttng-tools.git] / ltt-sessiond / main.c
index 44b0c84ba0bedf98f301c237fbf57e1994660a79..92ece5a11f71017575bababefc9baecbec87415a 100644 (file)
@@ -3,8 +3,8 @@
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation; only version 2
+ * of the License.
  *
  * This program is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -906,6 +906,7 @@ static pid_t spawn_kconsumerd(void)
 {
        int ret;
        pid_t pid;
+       const char *verbosity;
 
        DBG("Spawning kconsumerd");
 
@@ -914,7 +915,12 @@ static pid_t spawn_kconsumerd(void)
                /*
                 * Exec kconsumerd.
                 */
-               execlp("ltt-kconsumerd", "ltt-kconsumerd", "--verbose", NULL);
+               if (opt_verbose > 1) {
+                       verbosity = "--verbose";
+               } else {
+                       verbosity = "--quiet";
+               }
+               execl(INSTALL_BIN_PATH "/ltt-kconsumerd", "ltt-kconsumerd", verbosity, NULL);
                if (errno != 0) {
                        perror("kernel start consumer exec");
                }
@@ -1118,7 +1124,7 @@ error:
  */
 static int start_kernel_trace(struct ltt_kernel_session *session)
 {
-       int ret;
+       int ret = 0;
 
        if (session->kconsumer_fds_sent == 0) {
                ret = send_kconsumerd_fds(kconsumerd_cmd_sock, session);
@@ -1246,7 +1252,7 @@ static void list_lttng_sessions(struct lttng_session *sessions)
  */
 static int process_client_msg(struct command_ctx *cmd_ctx)
 {
-       int ret;
+       int ret = LTTCOMM_OK;
 
        DBG("Processing client command %d", cmd_ctx->lsm->cmd_type);
 
@@ -1646,7 +1652,7 @@ static int process_client_msg(struct command_ctx *cmd_ctx)
                                }
 
                                ret = kernel_create_channel(cmd_ctx->session->kernel_session,
-                                               &cmd_ctx->lsm->u.channel.chan, cmd_ctx->session->path);
+                                               chan, cmd_ctx->session->path);
                                if (ret < 0) {
                                        ret = LTTCOMM_KERN_CHAN_FAIL;
                                        goto error;
@@ -2243,7 +2249,8 @@ static int parse_args(int argc, char **argv)
                        opt_quiet = 1;
                        break;
                case 'v':
-                       opt_verbose = 1;
+                       /* Verbose level can increase using multiple -v */
+                       opt_verbose += 1;
                        break;
                default:
                        /* Unknown option or other error.
This page took 0.025026 seconds and 5 git commands to generate.