struct lttng_channel: split protocol ABI from instrumentation ABI
[lttng-ust.git] / libringbuffer / frontend.h
index 2ab369e50aefdfef8ab969aeb0a1e2335e2bcbae..5e1ada15677d6aa1db611625631a4b7130bc38f7 100644 (file)
  * address mapping. It is used only by RING_BUFFER_STATIC configuration. It can
  * be set to NULL for other backends.
  *
- * priv_data (output) is set to a pointer into a "priv_data_len"-sized
- * memory area for client-specific data. This memory is managed by lib
- * ring buffer. priv_data_align is the alignment required for the
- * private data area.
+ * private data is a memory area for configuration data. This memory is
+ * managed by lib ring buffer. priv_data_align is the alignment required
+ * for the private data area.
  */
 
 __attribute__((visibility("hidden")))
 extern
 struct lttng_ust_shm_handle *channel_create(const struct lttng_ust_lib_ring_buffer_config *config,
                                const char *name,
-                               void **priv_data,
                                size_t priv_data_align,
                                size_t priv_data_size,
                                void *priv_data_init,
+                               void *priv,
                                void *buf_addr,
                                size_t subbuf_size, size_t num_subbuf,
                                unsigned int switch_timer_interval,
@@ -61,7 +60,8 @@ struct lttng_ust_shm_handle *channel_create(const struct lttng_ust_lib_ring_buff
  */
 __attribute__((visibility("hidden")))
 extern
-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);
 
 
@@ -79,7 +79,7 @@ void channel_destroy(struct channel *chan, struct lttng_ust_shm_handle *handle,
 __attribute__((visibility("hidden")))
 extern 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,
@@ -88,26 +88,26 @@ extern struct lttng_ust_lib_ring_buffer *channel_get_ring_buffer(
 __attribute__((visibility("hidden")))
 extern
 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);
 
 __attribute__((visibility("hidden")))
 extern
 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);
 
 __attribute__((visibility("hidden")))
 extern
 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);
 
 __attribute__((visibility("hidden")))
 extern
 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);
 
@@ -176,7 +176,7 @@ static inline
 void lib_ring_buffer_put_next_subbuf(struct lttng_ust_lib_ring_buffer *buf,
                                     struct lttng_ust_shm_handle *handle)
 {
-       struct channel *chan;
+       struct lttng_ust_lib_ring_buffer_channel *chan;
 
        chan = shmp(handle, buf->backend.chan);
        if (!chan)
@@ -187,7 +187,7 @@ void lib_ring_buffer_put_next_subbuf(struct lttng_ust_lib_ring_buffer *buf,
 }
 
 __attribute__((visibility("hidden")))
-extern void channel_reset(struct channel *chan);
+extern void channel_reset(struct lttng_ust_lib_ring_buffer_channel *chan);
 
 __attribute__((visibility("hidden")))
 extern void lib_ring_buffer_reset(struct lttng_ust_lib_ring_buffer *buf,
@@ -224,13 +224,13 @@ int lib_ring_buffer_is_finalized(const struct lttng_ust_lib_ring_buffer_config *
 }
 
 static inline
-int lib_ring_buffer_channel_is_finalized(const struct channel *chan)
+int lib_ring_buffer_channel_is_finalized(const struct lttng_ust_lib_ring_buffer_channel *chan)
 {
        return chan->finalized;
 }
 
 static inline
-int lib_ring_buffer_channel_is_disabled(const struct channel *chan)
+int lib_ring_buffer_channel_is_disabled(const struct lttng_ust_lib_ring_buffer_channel *chan)
 {
        return uatomic_read(&chan->record_disabled);
 }
This page took 0.023695 seconds and 4 git commands to generate.