Fix: sessiond: lttng_channel object is not reclaimed
[lttng-tools.git] / src / bin / lttng-sessiond / snapshot.cpp
index 03472201acfd3c68a4cdad1937b6b69095248801..727dc5db8967bad758a7ac11ed4d6611967cb2d7 100644 (file)
@@ -241,6 +241,7 @@ struct snapshot_output *snapshot_find_output_by_name(const char *name,
 
        LTTNG_ASSERT(snapshot);
        LTTNG_ASSERT(name);
+       ASSERT_RCU_READ_LOCKED();
 
        cds_lfht_for_each_entry(snapshot->output_ht->ht, &iter.iter, output,
                node.node) {
@@ -267,6 +268,7 @@ struct snapshot_output *snapshot_find_output_by_id(uint32_t id,
        struct snapshot_output *output = NULL;
 
        LTTNG_ASSERT(snapshot);
+       ASSERT_RCU_READ_LOCKED();
 
        lttng_ht_lookup(snapshot->output_ht, (void *)((unsigned long) id), &iter);
        node = lttng_ht_iter_get_node_ulong(&iter);
@@ -325,5 +327,5 @@ void snapshot_destroy(struct snapshot *obj)
                snapshot_output_destroy(output);
        }
        rcu_read_unlock();
-       ht_cleanup_push(obj->output_ht);
+       lttng_ht_destroy(obj->output_ht);
 }
This page took 0.028021 seconds and 4 git commands to generate.