New API: lttng_ust_init_thread() for async-signal tracing
[lttng-ust.git] / liblttng-ust / lttng-context-perf-counters.c
index f8241c392872ff53230c55b7201589794a8c323b..94f4e95d4589bf8bb798af3a07fa7478e1e88c96 100644 (file)
@@ -7,6 +7,7 @@
  */
 
 #define _LGPL_SOURCE
+#include <limits.h>
 #include <sys/types.h>
 #include <unistd.h>
 #include <string.h>
@@ -17,6 +18,7 @@
 #include <stdint.h>
 #include <sys/mman.h>
 #include <sys/syscall.h>
+#include <lttng/ust-arch.h>
 #include <lttng/ust-events.h>
 #include <lttng/ust-tracer.h>
 #include <lttng/ringbuffer-context.h>
@@ -160,7 +162,7 @@ size_t perf_counter_get_size(struct lttng_ust_ctx_field *field, size_t offset)
 {
        size_t size = 0;
 
-       size += lib_ring_buffer_align(offset, lttng_alignof(uint64_t));
+       size += lttng_ust_lib_ring_buffer_align(offset, lttng_ust_rb_alignof(uint64_t));
        size += sizeof(uint64_t);
        return size;
 }
@@ -181,7 +183,7 @@ uint64_t read_perf_counter_syscall(
        return count;
 }
 
-#if defined(__x86_64__) || defined(__i386__)
+#if defined(LTTNG_UST_ARCH_X86)
 
 static
 uint64_t rdpmc(unsigned int counter)
@@ -438,13 +440,12 @@ uint64_t wrapper_perf_counter_read(struct lttng_ust_ctx_field *field)
 static
 void perf_counter_record(struct lttng_ust_ctx_field *field,
                 struct lttng_ust_lib_ring_buffer_ctx *ctx,
-                struct lttng_channel *chan)
+                struct lttng_ust_channel_buffer *chan)
 {
        uint64_t value;
 
        value = wrapper_perf_counter_read(field);
-       lib_ring_buffer_align_ctx(ctx, lttng_alignof(value));
-       chan->ops->event_write(ctx, &value, sizeof(value));
+       chan->ops->event_write(ctx, &value, sizeof(value), lttng_ust_rb_alignof(value));
 }
 
 static
@@ -504,7 +505,7 @@ void lttng_destroy_perf_counter_field(struct lttng_ust_ctx_field *field)
        free(perf_field);
 }
 
-#ifdef __ARM_ARCH_7A__
+#ifdef LTTNG_UST_ARCH_ARMV7
 
 static
 int perf_get_exclude_kernel(void)
@@ -512,7 +513,7 @@ int perf_get_exclude_kernel(void)
        return 0;
 }
 
-#else /* __ARM_ARCH_7A__ */
+#else /* LTTNG_UST_ARCH_ARMV7 */
 
 static
 int perf_get_exclude_kernel(void)
@@ -520,7 +521,7 @@ int perf_get_exclude_kernel(void)
        return 1;
 }
 
-#endif /* __ARM_ARCH_7A__ */
+#endif /* LTTNG_UST_ARCH_ARMV7 */
 
 /* Called with UST lock held */
 int lttng_add_perf_counter_to_ctx(uint32_t type,
@@ -545,8 +546,8 @@ int lttng_add_perf_counter_to_ctx(uint32_t type,
                goto perf_field_alloc_error;
        }
        ust_type = lttng_ust_create_type_integer(sizeof(uint64_t) * CHAR_BIT,
-                       lttng_alignof(uint64_t) * CHAR_BIT,
-                       lttng_is_signed_type(uint64_t),
+                       lttng_ust_rb_alignof(uint64_t) * CHAR_BIT,
+                       lttng_ust_is_signed_type(uint64_t),
                        BYTE_ORDER, 10);
        if (!ust_type) {
                ret = -ENOMEM;
This page took 0.024768 seconds and 4 git commands to generate.