X-Git-Url: http://git.efficios.com/?p=lttng-tools.git;a=blobdiff_plain;f=ltt-sessiond%2Ftrace.h;h=444126ba01e4322c7727a3341f85fd13467e8e90;hp=2f80143fe8042ec8d22b5c97b1c80a325e10dc92;hb=c363b55d55c5b1d0f43d7d8c2938b5bea842d6eb;hpb=8c0faa1d8372c06087498985643ec9d2619d785b diff --git a/ltt-sessiond/trace.h b/ltt-sessiond/trace.h index 2f80143fe..444126ba0 100644 --- a/ltt-sessiond/trace.h +++ b/ltt-sessiond/trace.h @@ -19,10 +19,17 @@ #ifndef _LTT_TRACE_H #define _LTT_TRACE_H -#include "ltt-sessiond.h" -#include "session.h" +#include +#include #include "lttng-kernel.h" +/* Default kernel channel attributes */ +#define DEFAULT_KERNEL_OVERWRITE 0 +#define DEFAULT_KERNEL_SUBBUF_SIZE 4096 /* bytes */ +#define DEFAULT_KERNEL_SUBBUF_NUM 8 /* Must always be a power of 2 */ +#define DEFAULT_KERNEL_SWITCH_TIMER 0 /* usec */ +#define DEFAULT_KERNEL_READ_TIMER 200 /* usec */ + /* Kernel event list */ struct ltt_kernel_event_list { struct cds_list_head head; @@ -96,10 +103,24 @@ struct ltt_ust_marker { char *channel; }; -int get_trace_count_per_session(struct ltt_session *session); -void get_traces_per_session(struct ltt_session *session, struct lttng_trace *traces); -int ust_create_trace(struct command_ctx *cmd_ctx); -int ust_start_trace(struct command_ctx *cmd_ctx); -int ust_stop_trace(struct command_ctx *cmd_ctx); +/* + * Create functions malloc() the data structure. + */ +struct ltt_kernel_session *trace_create_kernel_session(void); +struct ltt_kernel_channel *trace_create_kernel_channel(void); +struct ltt_kernel_event *trace_create_kernel_event(char *name, + enum lttng_kernel_instrumentation type); +struct ltt_kernel_metadata *trace_create_kernel_metadata(void); +struct ltt_kernel_stream *trace_create_kernel_stream(void); + +/* + * Destroy functions free() the data structure and remove from linked list if + * it's applies. + */ +void trace_destroy_kernel_session(struct ltt_kernel_session *session); +void trace_destroy_kernel_metadata(struct ltt_kernel_metadata *metadata); +void trace_destroy_kernel_channel(struct ltt_kernel_channel *channel); +void trace_destroy_kernel_event(struct ltt_kernel_event *event); +void trace_destroy_kernel_stream(struct ltt_kernel_stream *stream); #endif /* _LTT_TRACE_H */