+ /*
+ * rotate_position represents the position in the ring-buffer that has to
+ * be flushed to disk to complete the ongoing rotation. When that position
+ * is reached, this tracefile can be closed and a new one is created in
+ * channel_read_only_attributes.path.
+ */
+ unsigned long rotate_position;
+
+ /*
+ * Read-only copies of channel values. We cannot safely access the
+ * channel from a stream, so we need to have a local copy of these
+ * fields in the stream object. These fields should be removed from
+ * the stream objects when we introduce refcounting.
+ */
+ struct {
+ char path[LTTNG_PATH_MAX];
+ uint64_t tracefile_size;
+ } channel_read_only_attributes;
+
+ /*
+ * Flag to inform the data or metadata thread that a stream is
+ * ready to be rotated.
+ */
+ bool rotate_ready;
+