Fix: double RCU unlock on event_agent_disable_all
[lttng-tools.git] / src / common / consumer.c
index 526fbbf35c157f2bf545ef53b68dc0e45ef17365..c34f47c33f725252f2e598603653e9b1129fcafc 100644 (file)
@@ -286,6 +286,17 @@ static void free_channel_rcu(struct rcu_head *head)
        struct lttng_consumer_channel *channel =
                caa_container_of(node, struct lttng_consumer_channel, node);
 
+       switch (consumer_data.type) {
+       case LTTNG_CONSUMER_KERNEL:
+               break;
+       case LTTNG_CONSUMER32_UST:
+       case LTTNG_CONSUMER64_UST:
+               lttng_ustconsumer_free_channel(channel);
+               break;
+       default:
+               ERR("Unknown consumer_data type");
+               abort();
+       }
        free(channel);
 }
 
@@ -702,7 +713,7 @@ end:
 /*
  * Allocate and return a consumer relayd socket.
  */
-struct consumer_relayd_sock_pair *consumer_allocate_relayd_sock_pair(
+static struct consumer_relayd_sock_pair *consumer_allocate_relayd_sock_pair(
                uint64_t net_seq_idx)
 {
        struct consumer_relayd_sock_pair *obj = NULL;
This page took 0.0236 seconds and 4 git commands to generate.