X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=lttng-abi.c;h=6993a46fb740039d22a647d1b13fef567b70dbc6;hb=9a0aa3b1fd7f693fc14b29cce9eb07cd275b0347;hp=5823a1db042d6fa8aa5e88bef4a35235bf5eea4e;hpb=7a88f8b50696dd71e80c08661159caf8e119bf51;p=lttng-modules.git diff --git a/lttng-abi.c b/lttng-abi.c index 5823a1db..6993a46f 100644 --- a/lttng-abi.c +++ b/lttng-abi.c @@ -565,9 +565,11 @@ unsigned int lttng_metadata_ring_buffer_poll(struct file *filp, if (finalized) mask |= POLLHUP; + mutex_lock(&stream->metadata_cache->lock); if (stream->metadata_cache->metadata_written > stream->metadata_out) mask |= POLLIN; + mutex_unlock(&stream->metadata_cache->lock); } return mask; @@ -865,7 +867,6 @@ int lttng_abi_open_metadata_stream(struct file *channel_file) metadata_stream->priv = buf; stream_priv = metadata_stream; metadata_stream->transport = channel->transport; - mutex_init(&metadata_stream->lock); /* * Since life-time of metadata cache differs from that of