X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Fbin%2Flttng-sessiond%2Fmain.c;h=2a97c37f6859988360dd283d514429cc8a7f59c8;hb=c9d424071aa532aa287fa86cfe02edbeded50e7b;hp=fac06e0f75c62512e67ea2e87f2b469a5b2a1d90;hpb=1b2ef7fe9e5d6396484002b5ba20b798b45519f9;p=lttng-tools.git diff --git a/src/bin/lttng-sessiond/main.c b/src/bin/lttng-sessiond/main.c index fac06e0f7..2a97c37f6 100644 --- a/src/bin/lttng-sessiond/main.c +++ b/src/bin/lttng-sessiond/main.c @@ -157,6 +157,7 @@ static const struct option long_options[] = { { "config", 1, 0, 'f' }, { "load", 1, 0, 'l' }, { "kmod-probes", 1, 0, 'P' }, + { "extra-kmod-probes", 1, 0, 'e' }, { NULL, 0, 0, 0 } }; @@ -2593,6 +2594,7 @@ static int copy_session_consumer(int domain, struct ltt_session *session) dir_name = DEFAULT_KERNEL_TRACE_DIR; break; case LTTNG_DOMAIN_JUL: + case LTTNG_DOMAIN_LOG4J: case LTTNG_DOMAIN_UST: DBG3("Copying tracing session consumer output in UST session"); if (session->ust_session->consumer) { @@ -2637,6 +2639,7 @@ static int create_ust_session(struct ltt_session *session, switch (domain->type) { case LTTNG_DOMAIN_JUL: + case LTTNG_DOMAIN_LOG4J: case LTTNG_DOMAIN_UST: break; default: @@ -2882,6 +2885,7 @@ static int process_client_msg(struct command_ctx *cmd_ctx, int sock, } break; case LTTNG_DOMAIN_JUL: + case LTTNG_DOMAIN_LOG4J: case LTTNG_DOMAIN_UST: if (!cmd_ctx->session->ust_session) { ret = LTTNG_ERR_NO_CHANNEL; @@ -2963,6 +2967,7 @@ static int process_client_msg(struct command_ctx *cmd_ctx, int sock, break; case LTTNG_DOMAIN_JUL: + case LTTNG_DOMAIN_LOG4J: case LTTNG_DOMAIN_UST: { if (!ust_app_supported()) { @@ -3056,6 +3061,7 @@ skip_domain: cmd_ctx->lsm->cmd_type == LTTNG_STOP_TRACE) { switch (cmd_ctx->lsm->domain.type) { case LTTNG_DOMAIN_JUL: + case LTTNG_DOMAIN_LOG4J: case LTTNG_DOMAIN_UST: if (uatomic_read(&ust_consumerd_state) != CONSUMER_STARTED) { ret = LTTNG_ERR_NO_USTCONSUMERD; @@ -4209,6 +4215,7 @@ static void usage(void) fprintf(stderr, " -f --config Load daemon configuration file\n"); fprintf(stderr, " -l --load PATH Load session configuration\n"); fprintf(stderr, " --kmod-probes Specify kernel module probes to load\n"); + fprintf(stderr, " --extra-kmod-probes Specify extra kernel module probes to load\n"); } /* @@ -4395,6 +4402,14 @@ static int set_option(int opt, const char *arg, const char *optname) ret = -ENOMEM; } break; + case 'e': + free(kmod_extra_probes_list); + kmod_extra_probes_list = strdup(arg); + if (!kmod_extra_probes_list) { + perror("strdup"); + ret = -ENOMEM; + } + break; case 'f': /* This is handled in set_options() thus silent break. */ break;