X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fcommon%2Fconsumer-timer.c;h=b867a35bf0d6e9d44da62698fa366f7e06bd2d70;hb=994ab360b3264e19fdf590178601fa1f9f6489d0;hp=7ece0f6a54a37eb97084e8973cecc63c59b8b8e3;hpb=9ce5646a7ef9b8d7936c46649a21ee546fadd538;p=lttng-tools.git diff --git a/src/common/consumer-timer.c b/src/common/consumer-timer.c index 7ece0f6a5..b867a35bf 100644 --- a/src/common/consumer-timer.c +++ b/src/common/consumer-timer.c @@ -21,14 +21,15 @@ #include #include +#include #include #include #include #include #include "consumer-timer.h" +#include "consumer-testpoint.h" #include "ust-consumer/ust-consumer.h" -#include "../bin/lttng-consumerd/health-consumerd.h" static struct timer_signal_data timer_signal = { .tid = 0, @@ -115,7 +116,7 @@ static void metadata_switch_timer(struct lttng_consumer_local_data *ctx, static int send_empty_index(struct lttng_consumer_stream *stream, uint64_t ts) { int ret; - struct lttng_packet_index index; + struct ctf_packet_index index; memset(&index, 0, sizeof(index)); index.timestamp_end = htobe64(ts); @@ -397,7 +398,7 @@ void consumer_timer_live_start(struct lttng_consumer_channel *channel, assert(channel); assert(channel->key); - if (live_timer_interval == 0) { + if (live_timer_interval <= 0) { return; } @@ -472,6 +473,10 @@ void *consumer_timer_thread(void *data) health_register(health_consumerd, HEALTH_CONSUMERD_TYPE_METADATA_TIMER); + if (testpoint(consumerd_thread_metadata_timer)) { + goto error_testpoint; + } + health_code_update(); /* Only self thread will receive signal mask. */ @@ -503,7 +508,9 @@ void *consumer_timer_thread(void *data) } } - /* Currently never reached */ +error_testpoint: + /* Only reached in testpoint error */ + health_error(); health_unregister(health_consumerd); /* Never return */