X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fcommon%2Fconsumer-timer.c;h=c659bf63333a0de56fc568f99c167fb55e12e24c;hb=49ceaa707d6fd92526e6afb4beeca7bb77409fe2;hp=b681ae763379deaa55d68da8f6113b7b99b87eb3;hpb=50adc26400482c07210afcda8ef1d3322f75871d;p=lttng-tools.git diff --git a/src/common/consumer-timer.c b/src/common/consumer-timer.c index b681ae763..c659bf633 100644 --- a/src/common/consumer-timer.c +++ b/src/common/consumer-timer.c @@ -23,11 +23,13 @@ #include #include +#include #include #include #include #include "consumer-timer.h" +#include "consumer-testpoint.h" #include "ust-consumer/ust-consumer.h" static struct timer_signal_data timer_signal = { @@ -153,8 +155,8 @@ static int check_kernel_stream(struct lttng_consumer_stream *stream) } ret = kernctl_snapshot(stream->wait_fd); if (ret < 0) { - if (errno != EAGAIN) { - ERR("Taking kernel snapshot"); + if (errno != EAGAIN && errno != ENODATA) { + PERROR("live timer kernel snapshot"); ret = -1; goto error_unlock; } @@ -472,6 +474,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 +509,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 */