case LTTNG_UST_CHAN_PER_CPU:
channel->type = CONSUMER_CHANNEL_TYPE_DATA;
attr.type = LTTNG_UST_CHAN_PER_CPU;
+ /*
+ * Set refcount to 1 for owner. Below, we will
+ * pass ownership to the
+ * consumer_thread_channel_poll() thread.
+ */
+ channel->refcount = 1;
break;
case LTTNG_UST_CHAN_METADATA:
channel->type = CONSUMER_CHANNEL_TYPE_METADATA;
if (!channel) {
ERR("UST consumer push metadata %" PRIu64 " not found", key);
ret_code = LTTNG_ERR_UST_CHAN_NOT_FOUND;
+ goto end_msg_sessiond;
}
/* Tell session daemon we are ready to receive the metadata. */