libust ABI: export streams
[lttng-ust.git] / libust / ltt-ring-buffer-metadata-client.h
index ef70a9f0cac0086f44dda015c867fe9499727729..dd168465655f5a646c8c62f4a3ded71210c03e26 100644 (file)
@@ -165,7 +165,9 @@ struct ltt_channel *_channel_create(const char *name,
        ltt_chan->handle = channel_create(&client_config, name, ltt_chan, buf_addr,
                              subbuf_size, num_subbuf, switch_timer_interval,
                              read_timer_interval);
-       ltt_chan->chan = shmp(handle, handle->chan);
+       if (!ltt_chan->handle)
+               return NULL;
+       ltt_chan->chan = shmp(ltt_chan->handle, ltt_chan->handle->chan);
        return ltt_chan;
 }
 
@@ -177,11 +179,14 @@ void ltt_channel_destroy(struct ltt_channel *ltt_chan)
 
 static
 struct lib_ring_buffer *ltt_buffer_read_open(struct channel *chan,
-                                            struct shm_handle *handle)
+                                            struct shm_handle *handle,
+                                            int *shm_fd, int *wait_fd,
+                                            uint64_t *memory_map_size)
 {
        struct lib_ring_buffer *buf;
 
-       buf = channel_get_ring_buffer(&client_config, chan, 0, handle);
+       buf = channel_get_ring_buffer(&client_config, chan,
+                       0, handle, shm_fd, wait_fd, memory_map_size);
        if (!lib_ring_buffer_open_read(buf, handle))
                return buf;
        return NULL;
@@ -257,7 +262,7 @@ int ltt_is_disabled(struct channel *chan)
 }
 
 static struct ltt_transport ltt_relay_transport = {
-       .name = "relay-" RING_BUFFER_MODE_TEMPLATE_STRING,
+       .name = "relay-" RING_BUFFER_MODE_TEMPLATE_STRING "-mmap",
        .ops = {
                .channel_create = _channel_create,
                .channel_destroy = ltt_channel_destroy,
@@ -274,16 +279,14 @@ static struct ltt_transport ltt_relay_transport = {
        },
 };
 
-static
-void __attribute__((constructor)) ltt_ring_buffer_client_init(void)
+void RING_BUFFER_MODE_TEMPLATE_INIT(void)
 {
-       printf("LTT : ltt ring buffer client init\n");
+       DBG("LTT : ltt ring buffer client init\n");
        ltt_transport_register(&ltt_relay_transport);
 }
 
-static
-void __attribute__((destructor)) ltt_ring_buffer_client_exit(void)
+void RING_BUFFER_MODE_TEMPLATE_EXIT(void)
 {
-       printf("LTT : ltt ring buffer client exit\n");
+       DBG("LTT : ltt ring buffer client exit\n");
        ltt_transport_unregister(&ltt_relay_transport);
 }
This page took 0.024472 seconds and 4 git commands to generate.