X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=libringbuffer%2Ffrontend.h;h=eb95e6225986a759df3e809be09ad6e955222d5a;hb=d028eddb5959160ef6ec4b09f786730910d0f8f8;hp=e1d9d575599e2baee592ccbe87b4c45097c2bf3d;hpb=4cfec15c93af7e0cfe3ce769ee90486bb8ab7c37;p=lttng-ust.git diff --git a/libringbuffer/frontend.h b/libringbuffer/frontend.h index e1d9d575..eb95e622 100644 --- a/libringbuffer/frontend.h +++ b/libringbuffer/frontend.h @@ -34,11 +34,20 @@ * buf_addr is a pointer the the beginning of the preallocated buffer contiguous * 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. */ extern struct lttng_ust_shm_handle *channel_create(const struct lttng_ust_lib_ring_buffer_config *config, - const char *name, void *priv, + const char *name, + void **priv_data, + size_t priv_data_align, + size_t priv_data_size, + void *priv_data_init, void *buf_addr, size_t subbuf_size, size_t num_subbuf, unsigned int switch_timer_interval, @@ -57,12 +66,11 @@ int channel_handle_add_stream(struct lttng_ust_shm_handle *handle, int shm_fd, int wait_fd, uint64_t memory_map_size); /* - * channel_destroy returns the private data pointer. It finalizes all channel's - * buffers, waits for readers to release all references, and destroys the - * channel. + * channel_destroy finalizes all channel's buffers, waits for readers to + * release all references, and destroys the channel. */ extern -void *channel_destroy(struct channel *chan, struct lttng_ust_shm_handle *handle, +void channel_destroy(struct channel *chan, struct lttng_ust_shm_handle *handle, int shadow);