Namespace lttng/align.h as lttng/ust-align.h
[lttng-ust.git] / libringbuffer / ring_buffer_frontend.c
index 90459f006491e2e63512f6d1af3e407f6fca4ba5..23122865dfe4b4360da35a46438658881d9946ec 100644 (file)
 #include <urcu/ref.h>
 #include <urcu/tls-compat.h>
 #include <poll.h>
-#include <helper.h>
+#include <ust-helper.h>
+
+#include <lttng/ust-align.h>
+#include <lttng/ringbuffer-context.h>
 
 #include "smp.h"
-#include <lttng/ringbuffer-config.h>
+#include "ringbuffer-config.h"
 #include "vatomic.h"
 #include "backend.h"
 #include "frontend.h"
@@ -112,7 +115,7 @@ DEFINE_URCU_TLS(unsigned int, lib_ring_buffer_nesting);
 static pthread_mutex_t wakeup_fd_mutex = PTHREAD_MUTEX_INITIALIZER;
 
 static
-void lib_ring_buffer_print_errors(struct channel *chan,
+void lib_ring_buffer_print_errors(struct lttng_ust_lib_ring_buffer_channel *chan,
                                struct lttng_ust_lib_ring_buffer *buf, int cpu,
                                struct lttng_ust_shm_handle *handle);
 
@@ -144,7 +147,7 @@ void lttng_ust_ringbuffer_set_allow_blocking(void)
 }
 
 /* Get blocking timeout, in ms */
-static int lttng_ust_ringbuffer_get_timeout(struct channel *chan)
+static int lttng_ust_ringbuffer_get_timeout(struct lttng_ust_lib_ring_buffer_channel *chan)
 {
        if (!lttng_ust_allow_blocking)
                return 0;
@@ -163,7 +166,7 @@ static int lttng_ust_ringbuffer_get_timeout(struct channel *chan)
 void lib_ring_buffer_reset(struct lttng_ust_lib_ring_buffer *buf,
                           struct lttng_ust_shm_handle *handle)
 {
-       struct channel *chan;
+       struct lttng_ust_lib_ring_buffer_channel *chan;
        const struct lttng_ust_lib_ring_buffer_config *config;
        unsigned int i;
 
@@ -217,7 +220,7 @@ void lib_ring_buffer_reset(struct lttng_ust_lib_ring_buffer *buf,
  * be using the iterator concurrently with reset. The previous current iterator
  * record is reset.
  */
-void channel_reset(struct channel *chan)
+void channel_reset(struct lttng_ust_lib_ring_buffer_channel *chan)
 {
        /*
         * Reset iterators first. Will put the subbuffer if held for reading.
@@ -328,9 +331,10 @@ int lib_ring_buffer_create(struct lttng_ust_lib_ring_buffer *buf,
                           struct shm_object *shmobj)
 {
        const struct lttng_ust_lib_ring_buffer_config *config = &chanb->config;
-       struct channel *chan = caa_container_of(chanb, struct channel, backend);
+       struct lttng_ust_lib_ring_buffer_channel *chan = caa_container_of(chanb,
+                       struct lttng_ust_lib_ring_buffer_channel, backend);
        struct lttng_ust_lib_ring_buffer_backend_subbuffer *wsb;
-       struct channel *shmp_chan;
+       struct lttng_ust_lib_ring_buffer_channel *shmp_chan;
        struct commit_counters_hot *cc_hot;
        void *priv = channel_get_private(chan);
        size_t subbuf_header_size;
@@ -428,7 +432,7 @@ void lib_ring_buffer_channel_switch_timer(int sig, siginfo_t *si, void *uc)
 {
        const struct lttng_ust_lib_ring_buffer_config *config;
        struct lttng_ust_shm_handle *handle;
-       struct channel *chan;
+       struct lttng_ust_lib_ring_buffer_channel *chan;
        int cpu;
 
        assert(CMM_LOAD_SHARED(timer_signal.tid) == pthread_self());
@@ -472,7 +476,7 @@ end:
 static
 int lib_ring_buffer_poll_deliver(const struct lttng_ust_lib_ring_buffer_config *config,
                                 struct lttng_ust_lib_ring_buffer *buf,
-                                struct channel *chan,
+                                struct lttng_ust_lib_ring_buffer_channel *chan,
                                 struct lttng_ust_shm_handle *handle)
 {
        unsigned long consumed_old, consumed_idx, commit_count, write_offset;
@@ -581,7 +585,7 @@ void lib_ring_buffer_wakeup(struct lttng_ust_lib_ring_buffer *buf,
 }
 
 static
-void lib_ring_buffer_channel_do_read(struct channel *chan)
+void lib_ring_buffer_channel_do_read(struct lttng_ust_lib_ring_buffer_channel *chan)
 {
        const struct lttng_ust_lib_ring_buffer_config *config;
        struct lttng_ust_shm_handle *handle;
@@ -626,7 +630,7 @@ end:
 static
 void lib_ring_buffer_channel_read_timer(int sig, siginfo_t *si, void *uc)
 {
-       struct channel *chan;
+       struct lttng_ust_lib_ring_buffer_channel *chan;
 
        assert(CMM_LOAD_SHARED(timer_signal.tid) == pthread_self());
        chan = si->si_value.sival_ptr;
@@ -776,7 +780,7 @@ void lib_ring_buffer_wait_signal_thread_qs(unsigned int signr)
 }
 
 static
-void lib_ring_buffer_channel_switch_timer_start(struct channel *chan)
+void lib_ring_buffer_channel_switch_timer_start(struct lttng_ust_lib_ring_buffer_channel *chan)
 {
        struct sigevent sev;
        struct itimerspec its;
@@ -810,7 +814,7 @@ void lib_ring_buffer_channel_switch_timer_start(struct channel *chan)
 }
 
 static
-void lib_ring_buffer_channel_switch_timer_stop(struct channel *chan)
+void lib_ring_buffer_channel_switch_timer_stop(struct lttng_ust_lib_ring_buffer_channel *chan)
 {
        int ret;
 
@@ -829,7 +833,7 @@ void lib_ring_buffer_channel_switch_timer_stop(struct channel *chan)
 }
 
 static
-void lib_ring_buffer_channel_read_timer_start(struct channel *chan)
+void lib_ring_buffer_channel_read_timer_start(struct lttng_ust_lib_ring_buffer_channel *chan)
 {
        const struct lttng_ust_lib_ring_buffer_config *config = &chan->backend.config;
        struct sigevent sev;
@@ -864,7 +868,7 @@ void lib_ring_buffer_channel_read_timer_start(struct channel *chan)
 }
 
 static
-void lib_ring_buffer_channel_read_timer_stop(struct channel *chan)
+void lib_ring_buffer_channel_read_timer_stop(struct lttng_ust_lib_ring_buffer_channel *chan)
 {
        const struct lttng_ust_lib_ring_buffer_config *config = &chan->backend.config;
        int ret;
@@ -890,14 +894,14 @@ void lib_ring_buffer_channel_read_timer_stop(struct channel *chan)
        chan->read_timer_enabled = 0;
 }
 
-static void channel_unregister_notifiers(struct channel *chan,
+static void channel_unregister_notifiers(struct lttng_ust_lib_ring_buffer_channel *chan,
                           struct lttng_ust_shm_handle *handle)
 {
        lib_ring_buffer_channel_switch_timer_stop(chan);
        lib_ring_buffer_channel_read_timer_stop(chan);
 }
 
-static void channel_print_errors(struct channel *chan,
+static void channel_print_errors(struct lttng_ust_lib_ring_buffer_channel *chan,
                struct lttng_ust_shm_handle *handle)
 {
        const struct lttng_ust_lib_ring_buffer_config *config =
@@ -920,7 +924,7 @@ static void channel_print_errors(struct channel *chan,
        }
 }
 
-static void channel_free(struct channel *chan,
+static void channel_free(struct lttng_ust_lib_ring_buffer_channel *chan,
                struct lttng_ust_shm_handle *handle,
                int consumer)
 {
@@ -966,7 +970,7 @@ struct lttng_ust_shm_handle *channel_create(const struct lttng_ust_lib_ring_buff
 {
        int ret;
        size_t shmsize, chansize;
-       struct channel *chan;
+       struct lttng_ust_lib_ring_buffer_channel *chan;
        struct lttng_ust_shm_handle *handle;
        struct shm_object *shmobj;
        unsigned int nr_streams;
@@ -1007,7 +1011,7 @@ struct lttng_ust_shm_handle *channel_create(const struct lttng_ust_lib_ring_buff
                goto error_table_alloc;
 
        /* Calculate the shm allocation layout */
-       shmsize = sizeof(struct channel);
+       shmsize = sizeof(struct lttng_ust_lib_ring_buffer_channel);
        shmsize += lttng_ust_offset_align(shmsize, __alignof__(struct lttng_ust_lib_ring_buffer_shmp));
        shmsize += sizeof(struct lttng_ust_lib_ring_buffer_shmp) * nr_streams;
        chansize = shmsize;
@@ -1020,7 +1024,7 @@ struct lttng_ust_shm_handle *channel_create(const struct lttng_ust_lib_ring_buff
                        -1, -1);
        if (!shmobj)
                goto error_append;
-       /* struct channel is at object 0, offset 0 (hardcoded) */
+       /* struct lttng_ust_lib_ring_buffer_channel is at object 0, offset 0 (hardcoded) */
        set_shmp(handle->chan, zalloc_shm(shmobj, chansize));
        assert(handle->chan._ref.index == 0);
        assert(handle->chan._ref.offset == 0);
@@ -1092,7 +1096,7 @@ struct lttng_ust_shm_handle *channel_handle_create(void *data,
                        memory_map_size, wakeup_fd);
        if (!object)
                goto error_table_object;
-       /* struct channel is at object 0, offset 0 (hardcoded) */
+       /* struct lttng_ust_lib_ring_buffer_channel is at object 0, offset 0 (hardcoded) */
        handle->chan._ref.index = 0;
        handle->chan._ref.offset = 0;
        return handle;
@@ -1126,7 +1130,7 @@ unsigned int channel_handle_get_nr_streams(struct lttng_ust_shm_handle *handle)
 }
 
 static
-void channel_release(struct channel *chan, struct lttng_ust_shm_handle *handle,
+void channel_release(struct lttng_ust_lib_ring_buffer_channel *chan, struct lttng_ust_shm_handle *handle,
                int consumer)
 {
        channel_free(chan, handle, consumer);
@@ -1142,7 +1146,7 @@ void channel_release(struct channel *chan, struct lttng_ust_shm_handle *handle,
  * consumption of finalized channels, get_subbuf() will return -ENODATA.
  * They should release their handle at that point.
  */
-void channel_destroy(struct channel *chan, struct lttng_ust_shm_handle *handle,
+void channel_destroy(struct lttng_ust_lib_ring_buffer_channel *chan, struct lttng_ust_shm_handle *handle,
                int consumer)
 {
        if (consumer) {
@@ -1167,7 +1171,7 @@ void channel_destroy(struct channel *chan, struct lttng_ust_shm_handle *handle,
 
 struct lttng_ust_lib_ring_buffer *channel_get_ring_buffer(
                                        const struct lttng_ust_lib_ring_buffer_config *config,
-                                       struct channel *chan, int cpu,
+                                       struct lttng_ust_lib_ring_buffer_channel *chan, int cpu,
                                        struct lttng_ust_shm_handle *handle,
                                        int *shm_fd, int *wait_fd,
                                        int *wakeup_fd,
@@ -1191,7 +1195,7 @@ struct lttng_ust_lib_ring_buffer *channel_get_ring_buffer(
 }
 
 int ring_buffer_channel_close_wait_fd(const struct lttng_ust_lib_ring_buffer_config *config,
-                       struct channel *chan,
+                       struct lttng_ust_lib_ring_buffer_channel *chan,
                        struct lttng_ust_shm_handle *handle)
 {
        struct shm_ref *ref;
@@ -1201,7 +1205,7 @@ int ring_buffer_channel_close_wait_fd(const struct lttng_ust_lib_ring_buffer_con
 }
 
 int ring_buffer_channel_close_wakeup_fd(const struct lttng_ust_lib_ring_buffer_config *config,
-                       struct channel *chan,
+                       struct lttng_ust_lib_ring_buffer_channel *chan,
                        struct lttng_ust_shm_handle *handle)
 {
        struct shm_ref *ref;
@@ -1211,7 +1215,7 @@ int ring_buffer_channel_close_wakeup_fd(const struct lttng_ust_lib_ring_buffer_c
 }
 
 int ring_buffer_stream_close_wait_fd(const struct lttng_ust_lib_ring_buffer_config *config,
-                       struct channel *chan,
+                       struct lttng_ust_lib_ring_buffer_channel *chan,
                        struct lttng_ust_shm_handle *handle,
                        int cpu)
 {
@@ -1228,7 +1232,7 @@ int ring_buffer_stream_close_wait_fd(const struct lttng_ust_lib_ring_buffer_conf
 }
 
 int ring_buffer_stream_close_wakeup_fd(const struct lttng_ust_lib_ring_buffer_config *config,
-                       struct channel *chan,
+                       struct lttng_ust_lib_ring_buffer_channel *chan,
                        struct lttng_ust_shm_handle *handle,
                        int cpu)
 {
@@ -1260,7 +1264,7 @@ int lib_ring_buffer_open_read(struct lttng_ust_lib_ring_buffer *buf,
 void lib_ring_buffer_release_read(struct lttng_ust_lib_ring_buffer *buf,
                                  struct lttng_ust_shm_handle *handle)
 {
-       struct channel *chan = shmp(handle, buf->backend.chan);
+       struct lttng_ust_lib_ring_buffer_channel *chan = shmp(handle, buf->backend.chan);
 
        if (!chan)
                return;
@@ -1283,7 +1287,7 @@ int lib_ring_buffer_snapshot(struct lttng_ust_lib_ring_buffer *buf,
                             unsigned long *consumed, unsigned long *produced,
                             struct lttng_ust_shm_handle *handle)
 {
-       struct channel *chan;
+       struct lttng_ust_lib_ring_buffer_channel *chan;
        const struct lttng_ust_lib_ring_buffer_config *config;
        unsigned long consumed_cur, write_offset;
        int finalized;
@@ -1348,7 +1352,7 @@ int lib_ring_buffer_snapshot_sample_positions(
                             unsigned long *consumed, unsigned long *produced,
                             struct lttng_ust_shm_handle *handle)
 {
-       struct channel *chan;
+       struct lttng_ust_lib_ring_buffer_channel *chan;
        const struct lttng_ust_lib_ring_buffer_config *config;
 
        chan = shmp(handle, buf->backend.chan);
@@ -1379,7 +1383,7 @@ void lib_ring_buffer_move_consumer(struct lttng_ust_lib_ring_buffer *buf,
                                   struct lttng_ust_shm_handle *handle)
 {
        struct lttng_ust_lib_ring_buffer_backend *bufb = &buf->backend;
-       struct channel *chan;
+       struct lttng_ust_lib_ring_buffer_channel *chan;
        unsigned long consumed;
 
        chan = shmp(handle, bufb->chan);
@@ -1410,7 +1414,7 @@ int lib_ring_buffer_get_subbuf(struct lttng_ust_lib_ring_buffer *buf,
                               unsigned long consumed,
                               struct lttng_ust_shm_handle *handle)
 {
-       struct channel *chan;
+       struct lttng_ust_lib_ring_buffer_channel *chan;
        const struct lttng_ust_lib_ring_buffer_config *config;
        unsigned long consumed_cur, consumed_idx, commit_count, write_offset;
        int ret, finalized, nr_retry = LTTNG_UST_RING_BUFFER_GET_RETRY;
@@ -1574,7 +1578,7 @@ void lib_ring_buffer_put_subbuf(struct lttng_ust_lib_ring_buffer *buf,
                                struct lttng_ust_shm_handle *handle)
 {
        struct lttng_ust_lib_ring_buffer_backend *bufb = &buf->backend;
-       struct channel *chan;
+       struct lttng_ust_lib_ring_buffer_channel *chan;
        const struct lttng_ust_lib_ring_buffer_config *config;
        unsigned long sb_bindex, consumed_idx, consumed;
        struct lttng_ust_lib_ring_buffer_backend_pages_shmp *rpages;
@@ -1641,7 +1645,7 @@ void lib_ring_buffer_put_subbuf(struct lttng_ust_lib_ring_buffer *buf,
  */
 static
 void lib_ring_buffer_print_subbuffer_errors(struct lttng_ust_lib_ring_buffer *buf,
-                                           struct channel *chan,
+                                           struct lttng_ust_lib_ring_buffer_channel *chan,
                                            unsigned long cons_offset,
                                            int cpu,
                                            struct lttng_ust_shm_handle *handle)
@@ -1676,7 +1680,7 @@ void lib_ring_buffer_print_subbuffer_errors(struct lttng_ust_lib_ring_buffer *bu
 
 static
 void lib_ring_buffer_print_buffer_errors(struct lttng_ust_lib_ring_buffer *buf,
-                                        struct channel *chan,
+                                        struct lttng_ust_lib_ring_buffer_channel *chan,
                                         void *priv, int cpu,
                                         struct lttng_ust_shm_handle *handle)
 {
@@ -1706,7 +1710,7 @@ void lib_ring_buffer_print_buffer_errors(struct lttng_ust_lib_ring_buffer *buf,
 }
 
 static
-void lib_ring_buffer_print_errors(struct channel *chan,
+void lib_ring_buffer_print_errors(struct lttng_ust_lib_ring_buffer_channel *chan,
                                struct lttng_ust_lib_ring_buffer *buf, int cpu,
                                struct lttng_ust_shm_handle *handle)
 {
@@ -1748,7 +1752,7 @@ void lib_ring_buffer_print_errors(struct channel *chan,
  */
 static
 void lib_ring_buffer_switch_old_start(struct lttng_ust_lib_ring_buffer *buf,
-                                     struct channel *chan,
+                                     struct lttng_ust_lib_ring_buffer_channel *chan,
                                      struct switch_offsets *offsets,
                                      uint64_t tsc,
                                      struct lttng_ust_shm_handle *handle)
@@ -1789,7 +1793,7 @@ void lib_ring_buffer_switch_old_start(struct lttng_ust_lib_ring_buffer *buf,
  */
 static
 void lib_ring_buffer_switch_old_end(struct lttng_ust_lib_ring_buffer *buf,
-                                   struct channel *chan,
+                                   struct lttng_ust_lib_ring_buffer_channel *chan,
                                    struct switch_offsets *offsets,
                                    uint64_t tsc,
                                    struct lttng_ust_shm_handle *handle)
@@ -1844,7 +1848,7 @@ void lib_ring_buffer_switch_old_end(struct lttng_ust_lib_ring_buffer *buf,
  */
 static
 void lib_ring_buffer_switch_new_start(struct lttng_ust_lib_ring_buffer *buf,
-                                     struct channel *chan,
+                                     struct lttng_ust_lib_ring_buffer_channel *chan,
                                      struct switch_offsets *offsets,
                                      uint64_t tsc,
                                      struct lttng_ust_shm_handle *handle)
@@ -1884,7 +1888,7 @@ void lib_ring_buffer_switch_new_start(struct lttng_ust_lib_ring_buffer *buf,
  */
 static
 void lib_ring_buffer_switch_new_end(struct lttng_ust_lib_ring_buffer *buf,
-                                   struct channel *chan,
+                                   struct lttng_ust_lib_ring_buffer_channel *chan,
                                    struct switch_offsets *offsets,
                                    uint64_t tsc,
                                    struct lttng_ust_shm_handle *handle)
@@ -1919,7 +1923,7 @@ void lib_ring_buffer_switch_new_end(struct lttng_ust_lib_ring_buffer *buf,
 static
 int lib_ring_buffer_try_switch_slow(enum switch_mode mode,
                                    struct lttng_ust_lib_ring_buffer *buf,
-                                   struct channel *chan,
+                                   struct lttng_ust_lib_ring_buffer_channel *chan,
                                    struct switch_offsets *offsets,
                                    uint64_t *tsc,
                                    struct lttng_ust_shm_handle *handle)
@@ -2035,7 +2039,7 @@ int lib_ring_buffer_try_switch_slow(enum switch_mode mode,
 void lib_ring_buffer_switch_slow(struct lttng_ust_lib_ring_buffer *buf, enum switch_mode mode,
                                 struct lttng_ust_shm_handle *handle)
 {
-       struct channel *chan;
+       struct lttng_ust_lib_ring_buffer_channel *chan;
        const struct lttng_ust_lib_ring_buffer_config *config;
        struct switch_offsets offsets;
        unsigned long oldidx;
@@ -2114,7 +2118,7 @@ bool handle_blocking_retry(int *timeout_left_ms)
  */
 static
 int lib_ring_buffer_try_reserve_slow(struct lttng_ust_lib_ring_buffer *buf,
-                                    struct channel *chan,
+                                    struct lttng_ust_lib_ring_buffer_channel *chan,
                                     struct switch_offsets *offsets,
                                     struct lttng_ust_lib_ring_buffer_ctx *ctx,
                                     void *client_ctx)
@@ -2308,7 +2312,7 @@ retry:
 int lib_ring_buffer_reserve_slow(struct lttng_ust_lib_ring_buffer_ctx *ctx,
                void *client_ctx)
 {
-       struct channel *chan = ctx->chan;
+       struct lttng_ust_lib_ring_buffer_channel *chan = ctx->chan;
        struct lttng_ust_shm_handle *handle = ctx->handle;
        const struct lttng_ust_lib_ring_buffer_config *config = &chan->backend.config;
        struct lttng_ust_lib_ring_buffer *buf;
@@ -2426,7 +2430,7 @@ void deliver_count_events(const struct lttng_ust_lib_ring_buffer_config *config,
 
 void lib_ring_buffer_check_deliver_slow(const struct lttng_ust_lib_ring_buffer_config *config,
                                   struct lttng_ust_lib_ring_buffer *buf,
-                                  struct channel *chan,
+                                  struct lttng_ust_lib_ring_buffer_channel *chan,
                                   unsigned long offset,
                                   unsigned long commit_count,
                                   unsigned long idx,
This page took 0.029764 seconds and 4 git commands to generate.