X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=src%2Fcommon%2Fconsumer-timer.c;h=b35826cbba8ce82af8d47932832831819cbc6722;hb=66f9eb4e8ff51f0ca0f499a49371a7002a76aa09;hp=2687eaffd7d556bd00686737a8190d883621979e;hpb=5cc6b3e418571a252a05f4e2b66746a8f3c485ec;p=lttng-tools.git diff --git a/src/common/consumer-timer.c b/src/common/consumer-timer.c index 2687eaffd..b35826cbb 100644 --- a/src/common/consumer-timer.c +++ b/src/common/consumer-timer.c @@ -438,7 +438,7 @@ void consumer_timer_switch_start(struct lttng_consumer_channel *channel, channel->switch_timer_enabled = 1; its.it_value.tv_sec = switch_timer_interval / 1000000; - its.it_value.tv_nsec = switch_timer_interval % 1000000; + its.it_value.tv_nsec = (switch_timer_interval % 1000000) * 1000; its.it_interval.tv_sec = its.it_value.tv_sec; its.it_interval.tv_nsec = its.it_value.tv_nsec; @@ -495,7 +495,7 @@ void consumer_timer_live_start(struct lttng_consumer_channel *channel, channel->live_timer_enabled = 1; its.it_value.tv_sec = live_timer_interval / 1000000; - its.it_value.tv_nsec = live_timer_interval % 1000000; + its.it_value.tv_nsec = (live_timer_interval % 1000000) * 1000; its.it_interval.tv_sec = its.it_value.tv_sec; its.it_interval.tv_nsec = its.it_value.tv_nsec; @@ -554,6 +554,8 @@ void *consumer_timer_thread(void *data) siginfo_t info; struct lttng_consumer_local_data *ctx = data; + rcu_register_thread(); + health_register(health_consumerd, HEALTH_CONSUMERD_TYPE_METADATA_TIMER); if (testpoint(consumerd_thread_metadata_timer)) { @@ -596,6 +598,8 @@ error_testpoint: health_error(); health_unregister(health_consumerd); + rcu_unregister_thread(); + /* Never return */ return NULL; }