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;
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
struct lttng_channel *channel = file->private_data;
if (channel) {
- lttng_metadata_channel_destroy(channel);
fput(channel->session->file);
+ lttng_metadata_channel_destroy(channel);
}
return 0;