X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fbin%2Flttng-sessiond%2Fconsumer.h;h=73f113d0aca6fd8f4d33e2ba60cfe9bedd398d9f;hb=03e431550191df8609f921c7b4054c57ee4644d8;hp=a9266d5b939798882377bc2caeb0e67251464fa2;hpb=d07ceecd2f35ccf383c7529a18dcc9b9c4b8cb17;p=lttng-tools.git diff --git a/src/bin/lttng-sessiond/consumer.h b/src/bin/lttng-sessiond/consumer.h index a9266d5b9..73f113d0a 100644 --- a/src/bin/lttng-sessiond/consumer.h +++ b/src/bin/lttng-sessiond/consumer.h @@ -21,6 +21,7 @@ #include #include #include +#include #include "snapshot.h" @@ -140,6 +141,8 @@ struct consumer_net { * Consumer output object describing where and how to send data. */ struct consumer_output { + struct urcu_ref ref; /* Refcount */ + /* If the consumer is enabled meaning that should be used */ unsigned int enabled; enum consumer_dst_type type; @@ -192,7 +195,8 @@ int consumer_socket_recv(struct consumer_socket *socket, void *msg, struct consumer_output *consumer_create_output(enum consumer_dst_type type); struct consumer_output *consumer_copy_output(struct consumer_output *obj); -void consumer_destroy_output(struct consumer_output *obj); +void consumer_output_get(struct consumer_output *obj); +void consumer_output_put(struct consumer_output *obj); int consumer_set_network_uri(struct consumer_output *obj, struct lttng_uri *uri); int consumer_send_fds(struct consumer_socket *sock, int *fds, size_t nb_fd); @@ -240,7 +244,9 @@ void consumer_init_ask_channel_comm_msg(struct lttcomm_consumer_msg *msg, uint64_t tracefile_count, uint64_t session_id_per_pid, unsigned int monitor, - uint32_t ust_app_uid); + uint32_t ust_app_uid, + const char *root_shm_path, + const char *shm_path); void consumer_init_stream_comm_msg(struct lttcomm_consumer_msg *msg, enum lttng_consumer_command cmd, uint64_t channel_key,