X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fcommon%2Fconsumer-stream.c;h=02887fcc457aaa3deb435d94bfc3ccb04fa2496b;hp=723ec829f80095ff17bd3e5996540d01d754072a;hb=ec6ea7d01adc8a9d1481ba645b282c92ec27208e;hpb=d01178b6f6465443d7e6e1015aa7054e9d093e91 diff --git a/src/common/consumer-stream.c b/src/common/consumer-stream.c index 723ec829f..02887fcc4 100644 --- a/src/common/consumer-stream.c +++ b/src/common/consumer-stream.c @@ -280,6 +280,8 @@ void consumer_stream_destroy(struct lttng_consumer_stream *stream, */ if (stream->globally_visible) { pthread_mutex_lock(&consumer_data.lock); + pthread_mutex_lock(&stream->chan->lock); + pthread_mutex_lock(&stream->chan->timer_lock); pthread_mutex_lock(&stream->lock); /* Remove every reference of the stream in the consumer. */ consumer_stream_delete(stream, ht); @@ -293,6 +295,8 @@ void consumer_stream_destroy(struct lttng_consumer_stream *stream, consumer_data.need_update = 1; pthread_mutex_unlock(&stream->lock); + pthread_mutex_unlock(&stream->chan->timer_lock); + pthread_mutex_unlock(&stream->chan->lock); pthread_mutex_unlock(&consumer_data.lock); } else { /*