lib ring buffer must take private pointer copy before decrementing refcount
authorMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Fri, 26 Aug 2011 15:52:22 +0000 (11:52 -0400)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Fri, 26 Aug 2011 15:52:22 +0000 (11:52 -0400)
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
lib/ringbuffer/ring_buffer_frontend.c

index 6a4c241e84677e3f14f14aee282d0a00a418830a..3003dd8324458ee62c8e99460b295bc3ab8e481d 100644 (file)
@@ -752,8 +752,8 @@ void *channel_destroy(struct channel *chan)
        ACCESS_ONCE(chan->finalized) = 1;
        wake_up_interruptible(&chan->hp_wait);
        wake_up_interruptible(&chan->read_wait);
-       kref_put(&chan->ref, channel_release);
        priv = chan->backend.priv;
+       kref_put(&chan->ref, channel_release);
        return priv;
 }
 EXPORT_SYMBOL_GPL(channel_destroy);
This page took 0.026373 seconds and 4 git commands to generate.