Fix: consumerd: live client receives incomplete metadata
[lttng-tools.git] / src / common / consumer / consumer.h
index e06e163bfdd50de210418692c20d04ac7f96c2b3..53ab4c577ce1668773902ef9072377a3517fc38c 100644 (file)
@@ -247,6 +247,14 @@ struct stream_subbuffer {
                        unsigned long subbuf_size;
                        unsigned long padded_subbuf_size;
                        uint64_t version;
+                       /*
+                        * Left unset when unsupported.
+                        *
+                        * Indicates that this is the last sub-buffer of
+                        * a series of sub-buffer that makes-up a coherent
+                        * (parseable) unit of metadata.
+                        */
+                       LTTNG_OPTIONAL(bool) coherent;
                } metadata;
                struct {
                        unsigned long subbuf_size;
@@ -577,6 +585,7 @@ struct lttng_consumer_stream {
                on_sleep_cb on_sleep;
                unlock_cb unlock;
        } read_subbuffer_ops;
+       struct metadata_bucket *metadata_bucket;
 };
 
 /*
@@ -863,7 +872,6 @@ struct lttng_consumer_local_data *lttng_consumer_create(
                int (*update_stream)(uint64_t sessiond_key, uint32_t state));
 void lttng_consumer_destroy(struct lttng_consumer_local_data *ctx);
 ssize_t lttng_consumer_on_read_subbuffer_mmap(
-               struct lttng_consumer_local_data *ctx,
                struct lttng_consumer_stream *stream,
                const struct lttng_buffer_view *buffer,
                unsigned long padding);
This page took 0.026715 seconds and 5 git commands to generate.