X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fbin%2Flttng-sessiond%2Fkernel.c;h=7173fac16348d59cab3f2e220cb927797761fcf3;hb=09ede842515f606976233d5cc538fc47a60abc09;hp=8e972b0693cc28362fe36e9a80b040d128bed62c;hpb=e32d7f274604b77bcd83c24994e88df3761ed658;p=lttng-tools.git diff --git a/src/bin/lttng-sessiond/kernel.c b/src/bin/lttng-sessiond/kernel.c index 8e972b069..7173fac16 100644 --- a/src/bin/lttng-sessiond/kernel.c +++ b/src/bin/lttng-sessiond/kernel.c @@ -24,6 +24,7 @@ #include #include +#include #include #include #include @@ -1159,12 +1160,15 @@ end_boot_id: */ void kernel_destroy_session(struct ltt_kernel_session *ksess) { + struct lttng_trace_chunk *trace_chunk; + if (ksess == NULL) { DBG3("No kernel session when tearing down session"); return; } DBG("Tearing down kernel session"); + trace_chunk = ksess->current_trace_chunk; /* * Destroy channels on the consumer if at least one FD has been sent and we @@ -1198,6 +1202,7 @@ void kernel_destroy_session(struct ltt_kernel_session *ksess) consumer_output_send_destroy_relayd(ksess->consumer); trace_kernel_destroy_session(ksess); + lttng_trace_chunk_put(trace_chunk); } /* @@ -1297,7 +1302,7 @@ enum lttng_error_code kernel_snapshot_record(struct ltt_kernel_session *ksess, /* Put back the saved consumer output into the session. */ ksess->consumer = saved_output; if (ret < 0) { - status = LTTNG_ERR_KERN_CONSUMER_FAIL; + status = LTTNG_ERR_KERN_META_FAIL; goto error_consumer; } @@ -1432,7 +1437,7 @@ enum lttng_error_code kernel_rotate_session(struct ltt_session *session) chan->key, session->name); ret = consumer_rotate_channel(socket, chan->key, ksess->uid, ksess->gid, ksess->consumer, - ksess->consumer->subdir, + ksess->consumer->domain_subdir, /* is_metadata_channel */ false, session->current_archive_id); if (ret < 0) { @@ -1446,7 +1451,7 @@ enum lttng_error_code kernel_rotate_session(struct ltt_session *session) */ ret = consumer_rotate_channel(socket, ksess->metadata->key, ksess->uid, ksess->gid, ksess->consumer, - ksess->consumer->subdir, + ksess->consumer->domain_subdir, /* is_metadata_channel */ true, session->current_archive_id); if (ret < 0) {