/* Kernel session */
struct ltt_kernel_session {
- int fd;
- int metadata_stream_fd;
- int consumer_fds_sent;
- unsigned int channel_count;
- unsigned int stream_count_global;
- struct ltt_kernel_metadata *metadata;
- struct ltt_kernel_channel_list channel_list;
+ int fd{-1};
+ int metadata_stream_fd{-1};
+ int consumer_fds_sent{};
+ unsigned int channel_count{};
+ unsigned int stream_count_global{};
+ struct ltt_kernel_metadata *metadata{};
+ struct ltt_kernel_channel_list channel_list {};
/* UID/GID of the user owning the session */
- uid_t uid;
- gid_t gid;
- struct consumer_output *consumer;
+ uid_t uid{};
+ gid_t gid{};
+ struct consumer_output *consumer{};
/* Tracing session id */
- uint64_t id;
+ uint64_t id{};
/* Session is active or not meaning it has been started or stopped. */
unsigned int active:1;
/* Tell or not if the session has to output the traces. */
- unsigned int output_traces;
- unsigned int snapshot_mode;
- unsigned int has_non_default_channel;
- bool is_live_session;
+ unsigned int output_traces{};
+ unsigned int snapshot_mode{};
+ unsigned int has_non_default_channel{};
+ bool is_live_session{false};
/* Current trace chunk of the ltt_session. */
- struct lttng_trace_chunk *current_trace_chunk;
+ struct lttng_trace_chunk *current_trace_chunk{};
/* Tracker lists */
- struct process_attr_tracker *tracker_pid;
- struct process_attr_tracker *tracker_vpid;
- struct process_attr_tracker *tracker_uid;
- struct process_attr_tracker *tracker_vuid;
- struct process_attr_tracker *tracker_gid;
- struct process_attr_tracker *tracker_vgid;
+ struct process_attr_tracker *tracker_pid{};
+ struct process_attr_tracker *tracker_vpid{};
+ struct process_attr_tracker *tracker_uid{};
+ struct process_attr_tracker *tracker_vuid{};
+ struct process_attr_tracker *tracker_gid{};
+ struct process_attr_tracker *tracker_vgid{};
+
+ lttng::trace_format_descriptor::csptr trace_format;
};
/*
/*
* Create functions malloc() the data structure.
*/
-struct ltt_kernel_session *trace_kernel_create_session(void);
+struct ltt_kernel_session *trace_kernel_create_session(
+ lttng::trace_format_descriptor::csptr trace_format);
struct ltt_kernel_channel *trace_kernel_create_channel(
struct lttng_channel *chan);
enum lttng_error_code trace_kernel_create_event(struct lttng_event *ev,