X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=ltt-sessiond%2Ftrace.h;h=ac070908ae0cc15867d72067e2bcb92a216866f1;hp=444126ba01e4322c7727a3341f85fd13467e8e90;hb=050349bbb362ea993533591532643022efeab864;hpb=c363b55d55c5b1d0f43d7d8c2938b5bea842d6eb diff --git a/ltt-sessiond/trace.h b/ltt-sessiond/trace.h index 444126ba0..ac070908a 100644 --- a/ltt-sessiond/trace.h +++ b/ltt-sessiond/trace.h @@ -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 @@ -21,14 +21,10 @@ #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 */ +#include + +#include "lttng-kernel.h" /* Kernel event list */ struct ltt_kernel_event_list { @@ -48,6 +44,8 @@ struct ltt_kernel_channel_list { /* Kernel event */ struct ltt_kernel_event { int fd; + int enabled; + struct lttng_kernel_context *ctx; struct lttng_kernel_event *event; struct cds_list_head list; }; @@ -55,9 +53,12 @@ struct ltt_kernel_event { /* Kernel channel */ struct ltt_kernel_channel { int fd; + int enabled; char *pathname; unsigned int stream_count; - struct lttng_kernel_channel *channel; + unsigned int event_count; + struct lttng_kernel_context *ctx; + struct lttng_channel *channel; struct ltt_kernel_event_list events_list; struct ltt_kernel_stream_list stream_list; struct cds_list_head list; @@ -67,7 +68,7 @@ struct ltt_kernel_channel { struct ltt_kernel_metadata { int fd; char *pathname; - struct lttng_kernel_channel *conf; + struct lttng_channel *conf; }; /* Channel stream */ @@ -82,8 +83,11 @@ struct ltt_kernel_stream { struct ltt_kernel_session { int fd; int metadata_stream_fd; + int kconsumer_fds_sent; + int consumer_fd; unsigned int channel_count; unsigned int stream_count_global; + char *trace_path; struct ltt_kernel_metadata *metadata; struct ltt_kernel_channel_list channel_list; }; @@ -103,14 +107,18 @@ struct ltt_ust_marker { char *channel; }; +struct ltt_kernel_event *get_kernel_event_by_name( + char *name, struct ltt_kernel_channel *channel); +struct ltt_kernel_channel *get_kernel_channel_by_name( + char *name, struct ltt_kernel_session *session); + /* * 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_channel *trace_create_kernel_channel(struct lttng_channel *chan, char *path); +struct ltt_kernel_event *trace_create_kernel_event(struct lttng_event *ev); +struct ltt_kernel_metadata *trace_create_kernel_metadata(char *path); struct ltt_kernel_stream *trace_create_kernel_stream(void); /*