X-Git-Url: https://git.liburcu.org/?a=blobdiff_plain;f=src%2Fcommon%2Fconsumer%2Fconsumer-stream.cpp;h=bb0ec0a2436db1a9fb042b29b1e53b622c2eb60e;hb=319dcddc7409961e156af76666fe70d31baec55a;hp=c24ea6bca60762dcab04d8ddc147c7608276c60e;hpb=5c5e3d718d8248d5e075f64c34667c4c4617ae63;p=lttng-tools.git diff --git a/src/common/consumer/consumer-stream.cpp b/src/common/consumer/consumer-stream.cpp index c24ea6bca..bb0ec0a24 100644 --- a/src/common/consumer/consumer-stream.cpp +++ b/src/common/consumer/consumer-stream.cpp @@ -12,22 +12,22 @@ #include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include "consumer-stream.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "consumer-stream.hpp" /* * RCU call to free stream. MUST only be used with call_rcu(). @@ -35,9 +35,9 @@ static void free_stream_rcu(struct rcu_head *head) { struct lttng_ht_node_u64 *node = - caa_container_of(head, struct lttng_ht_node_u64, head); + lttng::utils::container_of(head, <tng_ht_node_u64::head); struct lttng_consumer_stream *stream = - caa_container_of(node, struct lttng_consumer_stream, node); + lttng::utils::container_of(node, <tng_consumer_stream::node); pthread_mutex_destroy(&stream->lock); free(stream); @@ -160,7 +160,7 @@ void ctf_packet_index_populate(struct ctf_packet_index *index, } static ssize_t consumer_stream_consume_mmap( - struct lttng_consumer_local_data *ctx, + struct lttng_consumer_local_data *ctx __attribute__((unused)), struct lttng_consumer_stream *stream, const struct stream_subbuffer *subbuffer) { @@ -231,7 +231,7 @@ static ssize_t consumer_stream_consume_splice( static int consumer_stream_send_index( struct lttng_consumer_stream *stream, const struct stream_subbuffer *subbuffer, - struct lttng_consumer_local_data *ctx) + struct lttng_consumer_local_data *ctx __attribute__((unused))) { off_t packet_offset = 0; struct ctf_packet_index index = {}; @@ -591,8 +591,8 @@ end: */ static int post_consume_open_new_packet(struct lttng_consumer_stream *stream, - const struct stream_subbuffer *subbuffer, - struct lttng_consumer_local_data *ctx) + const struct stream_subbuffer *subbuffer __attribute__((unused)), + struct lttng_consumer_local_data *ctx __attribute__((unused))) { int ret = 0; @@ -654,7 +654,7 @@ struct lttng_consumer_stream *consumer_stream_create( int ret; struct lttng_consumer_stream *stream; - stream = (lttng_consumer_stream *) zmalloc(sizeof(*stream)); + stream = zmalloc(); if (stream == NULL) { PERROR("malloc struct lttng_consumer_stream"); ret = -ENOMEM; @@ -1075,10 +1075,12 @@ void consumer_stream_destroy(struct lttng_consumer_stream *stream, if (stream->globally_visible) { pthread_mutex_lock(&the_consumer_data.lock); pthread_mutex_lock(&stream->chan->lock); + pthread_mutex_lock(&stream->lock); /* Remove every reference of the stream in the consumer. */ consumer_stream_delete(stream, ht); + destroy_close_stream(stream); /* Update channel's refcount of the stream. */ @@ -1274,7 +1276,7 @@ end: } static ssize_t metadata_bucket_consume( - struct lttng_consumer_local_data *unused, + struct lttng_consumer_local_data *unused __attribute__((unused)), struct lttng_consumer_stream *stream, const struct stream_subbuffer *subbuffer) {