X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=liblttng-ust-ctl%2Fustctl.c;h=041434bda666a524814749c5ee8390474e520d89;hb=362a65de6aba2cbc27c61c9fc23e755cb617837f;hp=cfe2cc960a8e52c580982c09815b8ac681204ac1;hpb=c0c0989ab70574e09b2f7e8b48c2da6af664a849;p=lttng-ust.git diff --git a/liblttng-ust-ctl/ustctl.c b/liblttng-ust-ctl/ustctl.c index cfe2cc96..041434bd 100644 --- a/liblttng-ust-ctl/ustctl.c +++ b/liblttng-ust-ctl/ustctl.c @@ -15,14 +15,16 @@ #include #include #include -#include #include + #include #include -#include +#include +#include "ust-compat.h" #include "../libringbuffer/backend.h" #include "../libringbuffer/frontend.h" +#include "../liblttng-ust/ust-events-internal.h" #include "../liblttng-ust/wait.h" #include "../liblttng-ust/lttng-rb-clients.h" #include "../liblttng-ust/clock.h" @@ -70,6 +72,7 @@ struct ustctl_counter_attr { uint32_t nr_dimensions; int64_t global_sum_step; struct ustctl_counter_dimension dimensions[USTCTL_COUNTER_ATTR_DIMENSION_MAX]; + bool coalesce_hits; }; /* @@ -1997,7 +2000,7 @@ int ustctl_get_instance_id(struct ustctl_consumer_stream *stream, return client_cb->instance_id(buf, handle, id); } -#ifdef LTTNG_UST_HAVE_PERF_EVENT +#ifdef HAVE_PERF_EVENT int ustctl_has_perf_counters(void) { @@ -2566,7 +2569,8 @@ struct ustctl_daemon_counter * const int *counter_cpu_fds, enum ustctl_counter_bitness bitness, enum ustctl_counter_arithmetic arithmetic, - uint32_t alloc_flags) + uint32_t alloc_flags, + bool coalesce_hits) { const char *transport_name; struct ustctl_daemon_counter *counter; @@ -2632,6 +2636,7 @@ struct ustctl_daemon_counter * counter->attr->arithmetic = arithmetic; counter->attr->nr_dimensions = nr_dimensions; counter->attr->global_sum_step = global_sum_step; + counter->attr->coalesce_hits = coalesce_hits; for (i = 0; i < nr_dimensions; i++) counter->attr->dimensions[i] = dimensions[i]; @@ -2687,6 +2692,7 @@ int ustctl_create_counter_data(struct ustctl_daemon_counter *counter, } counter_conf.number_dimensions = counter->attr->nr_dimensions; counter_conf.global_sum_step = counter->attr->global_sum_step; + counter_conf.coalesce_hits = counter->attr->coalesce_hits; for (i = 0; i < counter->attr->nr_dimensions; i++) { counter_conf.dimensions[i].size = counter->attr->dimensions[i].size; counter_conf.dimensions[i].underflow_index = counter->attr->dimensions[i].underflow_index; @@ -2920,8 +2926,8 @@ int ustctl_counter_clear(struct ustctl_daemon_counter *counter, static __attribute__((constructor)) void ustctl_init(void) { - init_usterr(); - lttng_ust_getenv_init(); /* Needs init_usterr() to be completed. */ + ust_err_init(); + lttng_ust_getenv_init(); /* Needs ust_err_init() to be completed. */ lttng_ust_clock_init(); lttng_ring_buffer_metadata_client_init(); lttng_ring_buffer_client_overwrite_init();