Fix: metadata stream should not reference session
authorMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Tue, 3 Sep 2013 21:23:15 +0000 (17:23 -0400)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Tue, 3 Sep 2013 21:23:15 +0000 (17:23 -0400)
commitb3b8072b02b4f1917a0254577c48301e8f44c210
treefe25c952bedabbf053467d81c97a5c6a62ab44c7
parentc126f575d904f3340f50b1a0902b872b25b13ae4
Fix: metadata stream should not reference session

The metadata stream should only reference the metadata cache, not the
session. Otherwise, we end up in a catch 22 situation:

- Stream POLLHUP is only given when the session is destroyed, but,
- The session is only destroyed when all references to session are
  released, including references from channels, but,
- If the metadata stream holds a reference on the metadata session, we
  end up with a circular dependency loop.

Fix this by making sure the metadata stream does not use any of the
lttng channel nor lttng session.

Reviewed-by: Julien Desfossez <jdesfossez@efficios.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
lib/ringbuffer/ring_buffer_vfs.c
lttng-abi.c
lttng-events.c
lttng-events.h
This page took 0.026005 seconds and 4 git commands to generate.