Bug #622 ยป fix-metadata-refcount.patch
lttng-abi.c | ||
---|---|---|
{
|
||
struct lttng_metadata_stream *stream = file->private_data;
|
||
struct lib_ring_buffer *buf = stream->priv;
|
||
struct channel *chan = buf->backend.chan;
|
||
struct lttng_channel *lttng_chan = channel_get_private(chan);
|
||
kref_put(&stream->metadata_cache->refcount, metadata_cache_destroy);
|
||
fput(lttng_chan->file);
|
||
return lib_ring_buffer_release(inode, file, buf);
|
||
}
|
||
... | ... | |
if (ret < 0)
|
||
goto fd_error;
|
||
atomic_long_inc(&channel_file->f_count);
|
||
kref_get(&session->metadata_cache->refcount);
|
||
list_add(&metadata_stream->list,
|
||
&session->metadata_cache->metadata_stream);
|