X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=ltt-sessiond%2Fkernel-ctl.h;h=e100c1b084f5d22d00cdd7836d23673e53ecb0b2;hb=f3ed775ef4842019b396f06095b053c3a70bc3c8;hp=a1ab0c25cccbf5b052a421cf1f301befad442170;hpb=aaf267147df386f0438de88782296077ff5b5861;p=lttng-tools.git diff --git a/ltt-sessiond/kernel-ctl.h b/ltt-sessiond/kernel-ctl.h index a1ab0c25c..e100c1b08 100644 --- a/ltt-sessiond/kernel-ctl.h +++ b/ltt-sessiond/kernel-ctl.h @@ -19,11 +19,28 @@ #ifndef _LTT_KERNEL_CTL_H #define _LTT_KERNEL_CTL_H +#include "session.h" #include "trace.h" -int kernel_create_session(struct command_ctx *cmd_ctx, int tracer_fd); -int kernel_create_channel(struct command_ctx *cmd_ctx); -int kernel_enable_event(struct ltt_kernel_channel *channel, char *name); +/* + * Default size for the event list when kernel_list_events is called. This size + * value is based on the initial LTTng 2.0 version set of tracepoints. This is + * NOT an upper bound because if the real event list size is bigger, dynamic + * reallocation is performed. + */ +#define KERNEL_EVENT_LIST_SIZE 2000 + +int kernel_create_session(struct ltt_session *session, int tracer_fd); +int kernel_create_channel(struct ltt_kernel_session *session, struct lttng_channel *chan); +int kernel_create_event(struct ltt_kernel_channel *channel, struct lttng_event *ev); int kernel_open_metadata(struct ltt_kernel_session *session); +int kernel_open_metadata_stream(struct ltt_kernel_session *session); +int kernel_open_channel_stream(struct ltt_kernel_channel *channel); +int kernel_flush_buffer(struct ltt_kernel_channel *channel); +int kernel_metadata_flush_buffer(int fd); +int kernel_start_session(struct ltt_kernel_session *session); +int kernel_stop_session(struct ltt_kernel_session *session); +ssize_t kernel_list_events(int tracer_fd, char **event_list); +void kernel_wait_quiescent(int fd); #endif /* _LTT_KERNEL_CTL_H */