X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=ltt-sessiond%2Fkernel-ctl.c;h=6247ce6bdd69ccd78162e1f422a490de1fb12030;hb=8e12081b0ef475c304c629257bf4dbee2a826886;hp=407dd580448c18d61cd0c9a2a168589fc6fb5a14;hpb=ced2f82009443bb90d8e385e86717c78c249adb7;p=lttng-tools.git diff --git a/ltt-sessiond/kernel-ctl.c b/ltt-sessiond/kernel-ctl.c index 407dd5804..6247ce6bd 100644 --- a/ltt-sessiond/kernel-ctl.c +++ b/ltt-sessiond/kernel-ctl.c @@ -24,14 +24,13 @@ #include #include -#include "lttngerr.h" -#include "libkernelctl.h" +#include +#include + #include "kernel-ctl.h" /* - * kernel_add_channel_context - * - * Add context on a kernel channel. + * Add context on a kernel channel. */ int kernel_add_channel_context(struct ltt_kernel_channel *chan, struct lttng_kernel_context *ctx) @@ -65,9 +64,7 @@ error: } /* - * kernel_add_event_context - * - * Add context on a kernel event. + * Add context on a kernel event. */ int kernel_add_event_context(struct ltt_kernel_event *event, struct lttng_kernel_context *ctx) @@ -96,10 +93,8 @@ error: } /* - * kernel_create_session - * - * Create a new kernel session, register it to the kernel tracer and add it to - * the session daemon session. + * Create a new kernel session, register it to the kernel tracer and add it to + * the session daemon session. */ int kernel_create_session(struct ltt_session *session, int tracer_fd) { @@ -139,12 +134,11 @@ error: } /* - * kernel_create_channel - * - * Create a kernel channel, register it to the kernel tracer and add it to the - * kernel session. + * Create a kernel channel, register it to the kernel tracer and add it to the + * kernel session. */ -int kernel_create_channel(struct ltt_kernel_session *session, struct lttng_channel *chan, char *path) +int kernel_create_channel(struct ltt_kernel_session *session, + struct lttng_channel *chan, char *path) { int ret; struct ltt_kernel_channel *lkc; @@ -184,12 +178,11 @@ error: } /* - * kernel_create_event - * - * Create a kernel event, enable it to the kernel tracer and add it to the - * channel event list of the kernel session. + * Create a kernel event, enable it to the kernel tracer and add it to the + * channel event list of the kernel session. */ -int kernel_create_event(struct lttng_event *ev, struct ltt_kernel_channel *channel) +int kernel_create_event(struct lttng_event *ev, + struct ltt_kernel_channel *channel) { int ret; struct ltt_kernel_event *event; @@ -227,9 +220,7 @@ error: } /* - * kernel_disable_channel - * - * Disable a kernel channel. + * Disable a kernel channel. */ int kernel_disable_channel(struct ltt_kernel_channel *chan) { @@ -252,9 +243,7 @@ error: } /* - * kernel_enable_channel - * - * Enable a kernel channel. + * Enable a kernel channel. */ int kernel_enable_channel(struct ltt_kernel_channel *chan) { @@ -277,9 +266,7 @@ error: } /* - * kernel_enable_event - * - * Enable a kernel event. + * Enable a kernel event. */ int kernel_enable_event(struct ltt_kernel_event *event) { @@ -304,9 +291,7 @@ error: } /* - * kernel_disable_event - * - * Disable a kernel event. + * Disable a kernel event. */ int kernel_disable_event(struct ltt_kernel_event *event) { @@ -328,10 +313,8 @@ error: } /* - * kernel_open_metadata - * - * Create kernel metadata, open from the kernel tracer and add it to the - * kernel session. + * Create kernel metadata, open from the kernel tracer and add it to the + * kernel session. */ int kernel_open_metadata(struct ltt_kernel_session *session, char *path) { @@ -368,9 +351,7 @@ error: } /* - * kernel_start_session - * - * Start tracing session. + * Start tracing session. */ int kernel_start_session(struct ltt_kernel_session *session) { @@ -391,9 +372,7 @@ error: } /* - * kernel_wait_quiescent - * - * Make a kernel wait to make sure in-flight probe have completed. + * Make a kernel wait to make sure in-flight probe have completed. */ void kernel_wait_quiescent(int fd) { @@ -409,7 +388,7 @@ void kernel_wait_quiescent(int fd) } /* - * kernel_calibrate + * Kernel calibrate */ int kernel_calibrate(int fd, struct lttng_kernel_calibrate *calibrate) { @@ -426,8 +405,6 @@ int kernel_calibrate(int fd, struct lttng_kernel_calibrate *calibrate) /* - * kernel_metadata_flush_buffer - * * Force flush buffer of metadata. */ int kernel_metadata_flush_buffer(int fd) @@ -443,9 +420,7 @@ int kernel_metadata_flush_buffer(int fd) } /* - * kernel_flush_buffer - * - * Force flush buffer for channel. + * Force flush buffer for channel. */ int kernel_flush_buffer(struct ltt_kernel_channel *channel) { @@ -468,9 +443,7 @@ int kernel_flush_buffer(struct ltt_kernel_channel *channel) } /* - * kernel_stop_session - * - * Stop tracing session. + * Stop tracing session. */ int kernel_stop_session(struct ltt_kernel_session *session) { @@ -490,12 +463,10 @@ error: } /* - * kernel_open_channel_stream + * Open stream of channel, register it to the kernel tracer and add it + * to the stream list of the channel. * - * Open stream of channel, register it to the kernel tracer and add it - * to the stream list of the channel. - * - * Return the number of created stream. Else, a negative value. + * Return the number of created stream. Else, a negative value. */ int kernel_open_channel_stream(struct ltt_kernel_channel *channel) { @@ -538,9 +509,7 @@ error: } /* - * kernel_open_metadata_stream - * - * Open the metadata stream and set it to the kernel session. + * Open the metadata stream and set it to the kernel session. */ int kernel_open_metadata_stream(struct ltt_kernel_session *session) { @@ -587,7 +556,7 @@ ssize_t kernel_list_events(int tracer_fd, struct lttng_event **events) fp = fdopen(fd, "r"); if (fp == NULL) { perror("kernel tracepoint list fdopen"); - goto error; + goto error_fp; } /* @@ -606,19 +575,23 @@ ssize_t kernel_list_events(int tracer_fd, struct lttng_event **events) elist = realloc(elist, nbmem); if (elist == NULL) { perror("realloc list events"); - goto error; + count = -ENOMEM; + goto end; } } - strncpy(elist[count].name, event, strlen(event)); + strncpy(elist[count].name, event, LTTNG_SYMBOL_NAME_LEN); + elist[count].name[LTTNG_SYMBOL_NAME_LEN - 1] = '\0'; count++; } *events = elist; - DBG("Kernel list events done (%zu events)", count); - +end: + fclose(fp); /* closes both fp and fd */ return count; +error_fp: + close(fd); error: return -1; }