X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fbin%2Flttng-sessiond%2Fsnapshot.c;h=3de468a835f496d746cd981a3963e7943e4d0fef;hb=def8897149ac794709649d97d72f9b8bc7d71bd8;hp=6b1aa8db1085c5edf2c01e404e3ce9387561c17d;hpb=7d2f74525fbda4dcc744f33ea26c911545b5df13;p=lttng-tools.git diff --git a/src/bin/lttng-sessiond/snapshot.c b/src/bin/lttng-sessiond/snapshot.c index 6b1aa8db1..3de468a83 100644 --- a/src/bin/lttng-sessiond/snapshot.c +++ b/src/bin/lttng-sessiond/snapshot.c @@ -15,7 +15,7 @@ * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ -#define _GNU_SOURCE +#define _LGPL_SOURCE #include #include #include @@ -24,6 +24,7 @@ #include #include "snapshot.h" +#include "utils.h" /* * Return the atomically incremented value of next_output_id. @@ -45,10 +46,11 @@ static int output_init(uint64_t max_size, const char *name, { int ret = 0, i; - assert(output); - memset(output, 0, sizeof(struct snapshot_output)); + /* + * max_size of -1ULL means unset. Set to default (unlimited). + */ if (max_size == (uint64_t) -1ULL) { max_size = 0; } @@ -220,7 +222,7 @@ void snapshot_output_destroy(struct snapshot_output *obj) if (obj->consumer) { consumer_output_send_destroy_relayd(obj->consumer); - consumer_destroy_output(obj->consumer); + consumer_output_put(obj->consumer); } free(obj); } @@ -321,4 +323,5 @@ void snapshot_destroy(struct snapshot *obj) snapshot_output_destroy(output); } rcu_read_unlock(); + ht_cleanup_push(obj->output_ht); }